Author: dkulp
Date: Thu Jan 12 21:14:01 2012
New Revision: 1230789
URL: http://svn.apache.org/viewvc?rev=1230789&view=rev
Log:
Start working toward making each jar an individual osgi bundle.
LOTS of import version range adjustments needed.
Modified:
cxf/trunk/api/pom.xml
cxf/trunk/common/common/pom.xml
cxf/trunk/maven-plugins/codegen-plugin/pom.xml
cxf/trunk/maven-plugins/corba/pom.xml
cxf/trunk/maven-plugins/java2ws-plugin/pom.xml
cxf/trunk/maven-plugins/wadl2java-plugin/pom.xml
cxf/trunk/maven-plugins/wsdl-validator-plugin/pom.xml
cxf/trunk/osgi/karaf/features/src/main/resources/features.xml
cxf/trunk/parent/pom.xml
cxf/trunk/rt/core/pom.xml
cxf/trunk/rt/databinding/jaxb/pom.xml
Modified: cxf/trunk/api/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/api/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/api/pom.xml (original)
+++ cxf/trunk/api/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,18 @@
<relativePath>../parent/pom.xml</relativePath>
</parent>
+ <properties>
+ <cxf.fragment.host>org.apache.cxf.cxf-api</cxf.fragment.host>
+ <cxf.osgi.import>
+ javax.activation;version="${cxf.osgi.javax.activation.version}",
+ javax.annotation;version="${cxf.osgi.javax.annotation.version}",
+ javax.xml.bind*;version="${cxf.osgi.javax.bind.version}",
+ javax.xml.stream*;version="${cxf.osgi.javax.stream.version}",
+ org.apache.commons.lang*;resolution:=optional;version="${cxf.osgi.commons.lang.version}",
+ javax.resource*;resolution:=optional
+ </cxf.osgi.import>
+ </properties>
+
<dependencies>
<dependency>
<groupId>junit</groupId>
@@ -89,6 +101,16 @@
<build>
<plugins>
<plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Fragment-Host></Fragment-Host>
+ </instructions>
+ </configuration>
+ </plugin>
+ <plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-xjc-plugin</artifactId>
<version>${cxf.xjc-utils.version}</version>
Modified: cxf/trunk/common/common/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/common/common/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/common/common/pom.xml (original)
+++ cxf/trunk/common/common/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,21 @@
<relativePath>../../parent/pom.xml</relativePath>
</parent>
+ <properties>
+ <cxf.osgi.import>
+ com.sun*;resolution:=optional,
+ javax.annotation;version="${cxf.osgi.javax.annotation.version}",
+ javax.xml.bind*;version="${cxf.osgi.javax.bind.version}",
+ javax.xml.stream*;version="${cxf.osgi.javax.stream.version}",
+ org.slf4j*;resolution:=optional;version="${cxf.osgi.slf4j.version}",
+ org.apache.log4j*;resolution:=optional,
+ net.sf.cglib*;resolution:=optional;version="[2.1.3, 2.2.0)",
+ org.springframework*;resolution:=optional;version="${cxf.osgi.spring.version}",
+ org.objectweb.asm*;resolution:=optional;version="${cxf.osgi.asm.version}",
+ </cxf.osgi.import>
+ <cxf.fragment.host>org.apache.cxf.cxf-api</cxf.fragment.host>
+ </properties>
+
<dependencies>
<dependency>
<groupId>junit</groupId>
Modified: cxf/trunk/maven-plugins/codegen-plugin/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/maven-plugins/codegen-plugin/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/maven-plugins/codegen-plugin/pom.xml (original)
+++ cxf/trunk/maven-plugins/codegen-plugin/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,10 @@
<version>2.6.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <cxf.manifest.location/>
+ </properties>
+
<dependencies>
<dependency>
<groupId>junit</groupId>
Modified: cxf/trunk/maven-plugins/corba/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/maven-plugins/corba/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/maven-plugins/corba/pom.xml (original)
+++ cxf/trunk/maven-plugins/corba/pom.xml Thu Jan 12 21:14:01 2012
@@ -32,6 +32,9 @@
<artifactId>cxf-maven-plugins</artifactId>
<version>2.6.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <cxf.manifest.location/>
+ </properties>
<dependencies>
<dependency>
Modified: cxf/trunk/maven-plugins/java2ws-plugin/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/maven-plugins/java2ws-plugin/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/maven-plugins/java2ws-plugin/pom.xml (original)
+++ cxf/trunk/maven-plugins/java2ws-plugin/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,9 @@
<artifactId>cxf-maven-plugins</artifactId>
<version>2.6.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <cxf.manifest.location/>
+ </properties>
<dependencies>
<dependency>
Modified: cxf/trunk/maven-plugins/wadl2java-plugin/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/maven-plugins/wadl2java-plugin/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/maven-plugins/wadl2java-plugin/pom.xml (original)
+++ cxf/trunk/maven-plugins/wadl2java-plugin/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,9 @@
<artifactId>cxf-maven-plugins</artifactId>
<version>2.6.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <cxf.manifest.location/>
+ </properties>
<dependencies>
<dependency>
Modified: cxf/trunk/maven-plugins/wsdl-validator-plugin/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/maven-plugins/wsdl-validator-plugin/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/maven-plugins/wsdl-validator-plugin/pom.xml (original)
+++ cxf/trunk/maven-plugins/wsdl-validator-plugin/pom.xml Thu Jan 12 21:14:01 2012
@@ -32,6 +32,9 @@
<artifactId>cxf-maven-plugins</artifactId>
<version>2.6.0-SNAPSHOT</version>
</parent>
+ <properties>
+ <cxf.manifest.location/>
+ </properties>
<dependencies>
<dependency>
Modified: cxf/trunk/osgi/karaf/features/src/main/resources/features.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/osgi/karaf/features/src/main/resources/features.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/osgi/karaf/features/src/main/resources/features.xml (original)
+++ cxf/trunk/osgi/karaf/features/src/main/resources/features.xml Thu Jan 12 21:14:01 2012
@@ -104,7 +104,7 @@
<bundle>mvn:org.ops4j.pax.url/pax-url-war/1.2.8</bundle>
</feature>
- <feature name="cxf" version="${project.version}" resolver='(obr)'>
+ <feature name="cxf-alldeps" version="${project.version}" resolver='(obr)'>
<feature version="${project.version}">cxf-specs</feature>
<bundle>mvn:commons-lang/commons-lang/${cxf.commons-lang.version}</bundle>
<bundle>mvn:commons-collections/commons-collections/${cxf.commons-collections.version}</bundle>
@@ -140,9 +140,20 @@
<bundle dependency="true">mvn:org.apache.velocity/velocity/${cxf.velocity.version}</bundle>
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jdom/${cxf.jdom.bundle.version}</bundle>
+ </feature>
+ <feature name="cxf" version="${project.version}" resolver='(obr)'>
+ <feature version="${project.version}">cxf-alldeps</feature>
+
<bundle start-level='30'>mvn:org.apache.cxf/cxf-bundle/${project.version}</bundle>
<bundle>mvn:org.apache.cxf.karaf/cxf-karaf-commands/${project.version}</bundle>
</feature>
+ <feature name="cxf-core" version="${project.version}" resolver='(obr)'>
+ <feature version="${project.version}">cxf-alldeps</feature>
+
+ <bundle start-level='30'>mvn:org.apache.cxf/cxf-api/${project.version}</bundle>
+ <bundle start-level='30'>mvn:org.apache.cxf/cxf-common-utilities/${project.version}</bundle>
+ <bundle start-level='30'>mvn:org.apache.cxf/cxf-rt-core/${project.version}</bundle>
+ </feature>
<feature name="cxf-sts" version="${project.version}" resolver='(obr)'>
<feature version="${project.version}">cxf</feature>
Modified: cxf/trunk/parent/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/parent/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/parent/pom.xml (original)
+++ cxf/trunk/parent/pom.xml Thu Jan 12 21:14:01 2012
@@ -43,7 +43,7 @@
<cxf.compile.flags>-Xlint:unchecked,deprecation,fallthrough,finally</cxf.compile.flags>
<cxf.compile.show.deprecation>true</cxf.compile.show.deprecation>
<cxf.codegenplugin.forkmode>once</cxf.codegenplugin.forkmode>
-
+ <cxf.manifest.location>${project.build.outputDirectory}/META-INF/MANIFEST.MF</cxf.manifest.location>
<cxf.eclipse.outputDirectory>${basedir}/target/classes</cxf.eclipse.outputDirectory>
<cxf.saaj.impl.groupId>com.sun.xml.messaging.saaj</cxf.saaj.impl.groupId>
<cxf.saaj.impl.artifactId>saaj-impl</cxf.saaj.impl.artifactId>
@@ -53,6 +53,23 @@
<extra.saaj.dep.artifactId>${cxf.saaj.impl.artifactId}</extra.saaj.dep.artifactId>
<extra.saaj.dep.version>${cxf.saaj.impl.version}</extra.saaj.dep.version>
+ <!-- OSGi related properties -->
+ <cxf.fragment.host/>
+ <cxf.osgi.import/>
+ <cxf.osgi.symbolic.name>${project.groupId}.${project.artifactId}</cxf.osgi.symbolic.name>
+ <cxf.osgi.export>
+ org.apache.cxf.*;-split-package:=first,
+ </cxf.osgi.export>
+ <cxf.osgi.spring.version>[2.5,4)</cxf.osgi.spring.version>
+ <cxf.osgi.asm.version>[2.0,4)</cxf.osgi.asm.version>
+ <cxf.osgi.commons.lang.version>[2.4,3)</cxf.osgi.commons.lang.version>
+ <cxf.osgi.slf4j.version>[1.5,2)</cxf.osgi.slf4j.version>
+ <cxf.osgi.javax.annotation.version>[0.0,2)</cxf.osgi.javax.annotation.version>
+ <cxf.osgi.javax.bind.version>[0.0,3)</cxf.osgi.javax.bind.version>
+ <cxf.osgi.javax.stream.version>[0.0,2)</cxf.osgi.javax.stream.version>
+ <cxf.osgi.javax.activation.version>[0.0,2)</cxf.osgi.javax.activation.version>
+ <cxf.osgi.javax.mail.version>[0.0,2)</cxf.osgi.javax.mail.version>
+
<!-- please maintain alphabetical order here -->
<cxf.abdera.version>1.1.2</cxf.abdera.version>
@@ -77,7 +94,7 @@
<cxf.jdom.version>1.0</cxf.jdom.version>
<cxf.jetty.version>7.5.3.v20111011</cxf.jetty.version>
- <cxf.maven.core.version>2.2.1</cxf.maven.core.version>
+ <cxf.maven.core.version>2.2.1</cxf.maven.core.version>
<cxf.msv.version>2011.1</cxf.msv.version>
<cxf.rhino.version>1.7R2</cxf.rhino.version>
<cxf.saaj.version>1.3.4</cxf.saaj.version>
@@ -152,6 +169,7 @@
<cxf.oro.bundle.version>2.0.8_4</cxf.oro.bundle.version>
<cxf.jdom.bundle.version>1.1_3</cxf.jdom.bundle.version>
+
<cxf.checkstyle.extension />
<cxf.spring.validation.mode>VALIDATION_AUTO</cxf.spring.validation.mode>
@@ -217,6 +235,18 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestEntries>
+ <Bundle-SymbolicName>${cxf.osgi.symbolic.name}.source</Bundle-SymbolicName>
+ <Eclipse-SourceBundle>${cxf.osgi.symbolic.name};version="${cxf.osgi.version.clean}"</Eclipse-SourceBundle>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<outputDirectory>${cxf.eclipse.outputDirectory}</outputDirectory>
@@ -354,6 +384,25 @@
</systemPropertyVariables>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestFile>${cxf.manifest.location}</manifestFile>
+ <manifestEntries>
+ <Specification-Title>${project.name}</Specification-Title>
+ <Specification-Vendor>The Apache Software Foundation</Specification-Vendor>
+ <Specification-Version>${project.version}</Specification-Version>
+ <Implementation-Title>${project.name}</Implementation-Title>
+ <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+ <Implementation-Vendor>The Apache Software Foundation</Implementation-Vendor>
+ <Implementation-Version>${project.version}</Implementation-Version>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+
</plugins>
</pluginManagement>
<plugins>
@@ -406,6 +455,63 @@
</execution>
</executions>
</plugin>
+
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>versions</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>cleanVersions</goal>
+ </goals>
+ <configuration>
+ <versions>
+ <cxf.osgi.version.clean>$project.version</cxf.osgi.version.clean>
+ </versions>
+ </configuration>
+ </execution>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${cxf.osgi.symbolic.name}</Bundle-SymbolicName>
+ <Implementation-Vendor>The Apache Software Foundation</Implementation-Vendor>
+ <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
+ <Implementation-Version>${cxf.osgi.version.clean}</Implementation-Version>
+ <Specification-Vendor>The Apache Software Foundation</Specification-Vendor>
+ <Specification-Version>${cxf.osgi.version.clean}</Specification-Version>
+ <Bundle-DocURL>http://cxf.apache.org</Bundle-DocURL>
+ <Fragment-Host>${cxf.fragment.host}</Fragment-Host>
+ <_failok>true</_failok>
+ <_nouses>true</_nouses>
+ <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
+ <Export-Package>${cxf.osgi.export}</Export-Package>
+ <Import-Package>
+ ${cxf.osgi.import},
+ *
+ </Import-Package>
+ <DynamicImport-Package>
+ com.sun.xml.bind.api,
+ com.sun.xml.bind.api.*,
+ com.sun.xml.internal.bind.api,
+ com.sun.xml.internal.bind.api.*,
+ com.ctc.wstx.*,
+ org.apache.commons.logging.*,
+ org.slf4j.*,
+ org.slf4j.impl.*,
+ org.eclipse.jetty.jmx
+ </DynamicImport-Package>
+ </instructions>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
</plugins>
<defaultGoal>install</defaultGoal>
Modified: cxf/trunk/rt/core/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/rt/core/pom.xml (original)
+++ cxf/trunk/rt/core/pom.xml Thu Jan 12 21:14:01 2012
@@ -33,6 +33,18 @@
<relativePath>../../parent/pom.xml</relativePath>
</parent>
+ <properties>
+ <cxf.fragment.host>org.apache.cxf.cxf-api</cxf.fragment.host>
+ <cxf.osgi.import>
+ org.springframework*;resolution:=optional;version="${cxf.osgi.spring.version}",
+ javax.activation;version="${cxf.osgi.javax.activation.version}",
+ javax.mail;version="${cxf.osgi.javax.mail.version}",
+ javax.annotation;version="${cxf.osgi.javax.annotation.version}",
+ javax.xml.bind*;version="${cxf.osgi.javax.bind.version}",
+ javax.xml.stream*;version="${cxf.osgi.javax.stream.version}"
+ </cxf.osgi.import>
+ </properties>
+
<dependencies>
<dependency>
<groupId>org.apache.aries.blueprint</groupId>
Modified: cxf/trunk/rt/databinding/jaxb/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/databinding/jaxb/pom.xml?rev=1230789&r1=1230788&r2=1230789&view=diff
==============================================================================
--- cxf/trunk/rt/databinding/jaxb/pom.xml (original)
+++ cxf/trunk/rt/databinding/jaxb/pom.xml Thu Jan 12 21:14:01 2012
@@ -30,7 +30,14 @@
<version>2.6.0-SNAPSHOT</version>
<relativePath>../../../parent/pom.xml</relativePath>
</parent>
-
+ <properties>
+ <cxf.osgi.import>
+ javax.activation;version="${cxf.osgi.javax.activation.version}",
+ javax.xml.bind*;version="${cxf.osgi.javax.bind.version}",
+ javax.xml.stream*;version="${cxf.osgi.javax.stream.version}",
+ org.objectweb.asm*;resolution:=optional;version="${cxf.osgi.asm.version}",
+ </cxf.osgi.import>
+ </properties>
<build>
<plugins>
<plugin>
|