Description
Equinox exports system packages as version=0.0.0. CXF bundle (and CXF bundle jaxrs) imports some of these packages as specific versions. This causes problems because:
- Application Developer has to provide bundles for these packages instead of letting CXF use the packages that Equinox exports
- When another bundle uses a system package specifying version=0.0.0, for example javax.mail;version=1.4.0 uses javax.activation;version=0.0.0, this causes "uses" conflict because CXF uses javax.mail;version=1.4.0 and javax.activation;version=1.0
- My workaround was to patch the CXF jar manifest.mf to remove version specifiers in some packages it imports
I've identified 5 packages that need to have its version specifier left out in CXF's Import-Package in order for my app to work:
- javax.activation
- javax.annotation
- javax.xml.stream
- javax.xml.stream.events
- javax.xml.stream.util
I'd vote for these import-packages to have no version specifier as well:
- javax.resource
- javax.resource.spi
Thanks.