Working on my connector sandbox I've been trying to run stuff in pax-exam and 
in unmodified karaf.  I ran into some rather hard to diagnose problems due to 
package versioning.

Our stax 1.2 api bundle includes the javax.xml.namespace package and it 
apparently matches the same packages as implemented in java 5 and java 6.  We 
are exporting it at version 1.0 but pax-exam/pax-runner and karaf export it 
with no version (version 0.0.0.0).  We've modified our copy of karaf to export 
at version 1.0.  Trying to use our stax bundles and bundles compiled against it 
(jaxb spec, jaxb impl, woodstox for example) cause mysterious CNFE and NCDFE 
inside jaxb impl.

If I rebuild everything without this package version then I can run tests in 
pax-exam and deploy stuff in regular karaf.  I think we should remove this 
package version.

I see that we also have versions for 

 javax.jws;version="2.0", \
 javax.jws.soap;version="2.0", \

and wonder if we will encounter similar problems with pax-exam and plain karaf 
with those packages.

I think as a general policy that unless there's a compelling reason such as 
with javax.transaction, until there is a spec defining package versions for 
stuff coming with java, we should not version these packages.

I opened https://issues.apache.org/jira/browse/GERONIMO-5848 and I'm going to 
commit changes to at least the affected bundles if not geronimo trunk.

thanks
david jencks

Reply via email to