I solved this problem, at least for car-maven-plugin, by setting the bootdelegation to include all the com.sun packages in the class library other than com.sun.xml.bind. I wish there was an exclusion syntax for the bootdelegation property.
Further thoughts are definitely welcome.... thanks david jencks On May 4, 2011, at 7:56 AM, Jarek Gawor wrote: > The only difference I'm aware of that we have between Karaf and > Geronimo configuration is the org.osgi.framework.bundle.parent > property. Karaf sets it to org.osgi.framework.bundle.parent=framework > while we don't set it in Geronimo and it defaults to "boot". But that > really shouldn't make any difference in this case as far as I can > tell. > > Jarek > > On Wed, May 4, 2011 at 3:57 AM, David Jencks <[email protected]> wrote: >> I've run into a problem in the osgi branch that I don't really understand >> yet. >> >> AFAICT in the trunk 3.0 server we install our jaxb 2.2 spec jar and the >> sun/oracle jaxb 2.2. implementation as a bundle. Furthermore when we try to >> use jaxb e.g. for parsing spec dds, this works and we are actually using the >> 2.2 bundle. We also have boot delegation of com.sun packages turned on. >> >> In the osgi branch, the car plugin runs a karaf instance in the maven vm. >> After the framework gets built, we start needing to install the jaxb 2.2 >> stuff. So, I wrote a little feature to install the specs, woodstox, and the >> jaxb 2.2 impl. However, now the com.sun bootdelegation seems to be kicking >> in so that as soon as the jaxb implementation gets to com.sun classes they >> are loaded from the framework/vm rather than the jaxb 2.2 imple bundle. >> >> This pretty much makes sense to me since we have the com.sun.* >> bootdelegation which IIUC is supposed to override any imports you may >> specify. However, what appears to me to be the same bundles seem to be >> working fine in trunk. >> >> Does anyone have any ideas how to make this work in the osgi branch or why >> it works in trunk? >> >> To see the problem, you can check out server/branches/3.0-osgi and build >> framework and plugins/j2ee. The problem appears in >> plugins/j2ee/j2ee-deployer. You may have to use -Pstage-bootstrap to get >> the car-maven-plugin to build the first time. >> >> many thanks >> david jencks >> >>
