ivan-ra opened a new issue, #595:
URL: https://github.com/apache/camel-karaf/issues/595

   this code causes ClassNotFoundException 
(org.glassfish.jaxb.runtime.v2.ContextFactory not found) for routes deployed on 
karaf environment (works well in standalone routes):
   ```
   import jakarta.xml.bind.JAXBContext;
   ...
   JAXBContext ctx = JAXBContext.newInstance(ArrayList.class);
   ```
   because camel-karaf has 2 incompatible features jaxb-runtime, and loads only 
3.0.2 jaxb bundles:
   ```
       <feature name="jaxb-runtime" version="3.0.2">
           <feature version="[3,4)">jakarta-xml-bind</feature>
           <bundle 
dependency="true">mvn:com.sun.xml.bind/jaxb-core/3.0.2</bundle>
           <bundle 
dependency="true">mvn:com.sun.xml.bind/jaxb-impl/3.0.2</bundle>
           <bundle 
dependency="true">mvn:com.sun.xml.bind/jaxb-osgi/3.0.2</bundle>
       </feature>
       <feature name="jaxb-runtime" version="4.0.5">
           <feature version="[4,5)">jakarta-xml-bind</feature>
           <bundle 
dependency="true">mvn:com.sun.istack/istack-commons-runtime/4.1.2</bundle>
           <bundle 
dependency="true">mvn:org.glassfish.jaxb/jaxb-core/4.0.5</bundle>
           <bundle 
dependency="true">mvn:org.glassfish.jaxb/jaxb-runtime/4.0.5</bundle>
           
<bundle>mvn:org.glassfish.hk2/osgi-resource-locator/2.5.0-b42</bundle>
       </feature>
   ```
   
   ```
   karaf@root()> feature:list|grep jaxb-runtime
   jaxb-runtime                             | 3.0.2            |          | 
Uninstalled | camel-4.8.2                       |
   jaxb-runtime                             | 4.0.5            |          | 
Started     | camel-4.8.2                       |
   ```
   but loaded packages v 3.0.2:
   ```
   karaf@root()> list|grep JAXB
   113 | Active |  50 | 4.8.2              | Apache Camel :: Karaf :: Core :: 
XML JAXB
   131 | Active |  80 | 3.0.2              | JAXB OSGI
   karaf@root()> package:exports -p org.glassfish.jaxb.runtime.v2
   Package Name                                       | Version | ID  | Bundle 
Name
   
---------------------------------------------------+---------+-----+---------------------------
   org.glassfish.jaxb.runtime.v2.model.annotation     | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.model.impl           | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.model.runtime        | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime.output       | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime.property     | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime.reflect.opt  | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime.reflect      | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime.unmarshaller | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.runtime              | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.schemagen.xmlschema  | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.schemagen            | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2.util                 | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   org.glassfish.jaxb.runtime.v2                      | 3.0.2   | 131 | 
com.sun.xml.bind.jaxb-osgi
   ```
   I have tried to change 4.0.5 bundle dependency value to "false", but it does 
not work because camel-blueprint requires jaxb bundles version 3.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to