Hi Daniel

Thanks for sharing this.

There is a JIRA ticket about this at
https://issues.apache.org/jira/browse/CAMEL-16888

Since you are on top of this, wonder if you would attempt to fix this
and submit a PR against camel-karaf, for the next version (eg the main
branch)
https://github.com/apache/camel-karaf


On Tue, Oct 19, 2021 at 5:28 PM Daniel Langevin <angelwin...@gmail.com> wrote:
>
> Hi Everyone,
>
> in my project, (converting routes from camel 2.17 to camel 3.xx) i will be 
> facing a problem with CXF.
>
> The tests were carried out with Karaf (V 4.2.x,4.3.x), camel (V 3.11.x, 3.12) 
> and CXF (V 3.4.x)
> Karaf run on openjdk version "1.8.0_282"
> featuresBoot = \
>     (instance/4.3.3, package/4.3.3, log/4.3.3, ssh/4.3.3, framework/4.3.3, 
> system/4.3.3, eventadmin/4.3.3, feature/4.3.3, shell/4.3.3, management/4.3.3, 
> \
>     service/4.3.3, jaas/4.3.3, deployer/4.3.3, diagnostic/4.3.3, wrap/2.6.7, 
> bundle/4.3.3, config/4.3.3, kar/4.3.3, webconsole/4.2.12, jms/4.2.12, 
> pax-jms-config/1.1
> .0, pax-jms-artemis/1.1.0, jaxb ) , \
> (camel/3.12, camel-barcode, camel-base64, camel-beanio, camel-csv, 
> camel-crypto, camel-dns, camel-fop, camel-ftp, camel-groovy, camel-gson, 
> camel-http, camel-jetty,
> camel-jms, camel-jackson, camel-jacksonxml, camel-ldap, camel-mail, 
> camel-openapi-java, camel-soap, camel-sql, camel-saxon, camel-servlet, 
> camel-tagsoup, camel-xj, c
> amel-xstream, camel-xslt-saxon, camel-zipfile, camel-cxf)  , \
> cxf/3.4.5, artemis/2.17
>
> ** Here is the symptom **
> At initial deployment (8 times out of 10), when I deploy and start a 
> camel-route using cxf bean, it works.
> If later I destroy and redeploy this route it still works
> Stop karaf OSGI
> Start again karaf OSGI
> Start the same camel-route using the same cxf bean, it always fails with 
> noSuchMethodError:
> ava.lang.NoSuchMethodError: 
> org.codehaus.stax2.ri.EmptyIterator.getInstance()Lorg/codehaus/stax2/ri/EmptyIterator;
>
> ** Here is what I did to get around this problem **
> So i check where is deployed this class: org.codehaus.stax2.ri.EmptyIterator
>
> bundle:find-class org.codehaus.stax2.ri.EmptyIterator
>
> Jackson-dataformat-XML (96)
> org/codehaus/stax2/ri/EmptyIterator.class
>
> Woodstox (103)
> org/codehaus/stax2/ri/EmptyIterator.class
>
> Stax2 API (347)
> org/codehaus/stax2/ri/EmptyIterator.class
>
> Stax2 API (348)
> org/codehaus/stax2/ri/EmptyIterator.class
>
> Woodstox XML-processor (349)
> org/codehaus/stax2/ri/EmptyIterator.class
>
>
> ???? 2 Stax2 API version ??????
> (Bundle 347)
> Bundle-Version = 3.1.4
>
> (Bundle 348)
> Bundle-Version = 4.2.1
>
> Then i found that the bundle (349) need Stax2-API version 3.1.4, so i decide 
> to make some modification in this file
>
> org/apache/camel/karaf/apache-camel/3.12.0/apache-camel-3.12.0-features.xml
>   <feature name='xml-specs-api' version='2.9.0' start-level='10'>
>     <bundle 
> dependency='true'>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/2.9.0</bundle>
>     <bundle 
> dependency='true'>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.stax-api-1.0/2.9.0</bundle>
>     <bundle 
> dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxws-api-2.2/2.9.0</bundle>
>     <bundle 
> dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxrs-api-2.1/2.9.0</bundle>
>     <bundle 
> dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.3/2.3_2</bundle>
>    <!--  D.Langevin 2021.10.18 Conflict with Apache cxf 3.4.x -->
>    <!--  <bundle>mvn:org.codehaus.woodstox/stax2-api/3.1.4</bundle> -->
>    <!--  <bundle>mvn:org.codehaus.woodstox/woodstox-core-asl/4.4.1</bundle> 
> -->
>     
> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-runtime/2.3.1_1</bundle>
>   </feature>
>
> Many feature of CAMEL use org.codehaus.woodstox/stax2-api/4.2,
> Many feature of CXF   use org.codehaus.woodstox/stax2-api/4.2.1
> i deciced to leave it, because i dont noticed problem at this time !!!!!
>
>
> Then i redo my test, and it's works...  all the time,
> Initial deployment (10/10)
> Stop and start karaf (10/10)
> Modification of camel-route using cxf bean (10/10)
>
>
> Hope this can help you while waiting for a fix
>
> Daniel Langevin
> Societe d'habitation du Quebec
> Quebec City



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to