[ 
https://issues.apache.org/jira/browse/CAMEL-3499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12978257#action_12978257
 ] 

Willem Jiang commented on CAMEL-3499:
-------------------------------------

committed the patch into Camel trunk repository.

> Issue with camel-soap - <dataFormats> -  JAXBContext not created
> ----------------------------------------------------------------
>
>                 Key: CAMEL-3499
>                 URL: https://issues.apache.org/jira/browse/CAMEL-3499
>             Project: Camel
>          Issue Type: Bug
>    Affects Versions: 2.5.0
>         Environment: Apache Karaf 2.1-SNAPSHOT
>            Reporter: Charles Moulliard
>            Assignee: Willem Jiang
>             Fix For: 2.6.0
>
>
> I would like to use camel-soap into the following camel route
>    <cxf:cxfEndpoint id="busServicesFinder"
>                     address="http://localhost:8282/cxf/serviceFinder";
>                     serviceClass="fr.client.proxy.Services">
>    </cxf:cxfEndpoint>
>    <camelContext trace="true" xmlns="http://camel.apache.org/schema/spring";>
>        <dataFormats>
>            <soapjaxb id="soap" contextPath="fr.client.proxy"/>
>        </dataFormats>
>        <route>
>            <from uri="cxf:bean:busServicesFinder?dataFormat=MESSAGE"/>
>            <log message="WebService called" loggingLevel="INFO"/>
>            <!-- <convertBodyTo type="String"/> -->
>            <unmarshal ref="soap"/>
>            ...
> but I get the following error in karaf when CXF extract the content and parse 
> it with JAXB
> Additional info
> >  * which jaxb bundle is/are deployed ?
> [ 200] [Active     ] [            ] [       ] [   60] Apache
> ServiceMix :: Bundles :: jaxb-impl (2.1.13.1)
> >  * does the system bundle export the sun packages ?
> No
> 200 com.sun.xml.bind.v2
>   200 com.sun.xml.bind.v2.model.annotation
>   200 com.sun.xml.bind.unmarshaller
>   200 com.sun.xml.bind.api.impl
>   200 com.sun.xml.bind.v2.schemagen.episode
>   200 com.sun.xml.bind.v2.util
>   200 com.sun.xml.bind.v2.runtime.unmarshaller
>   200 com.sun.xml.bind.marshaller
>   200 com.sun.xml.bind.v2.model.runtime
>   200 com.sun.xml.bind.v2.runtime.reflect.opt
>   200 com.sun.xml.bind.v2.schemagen.xmlschema
>   200 com.sun.xml.bind
>   200 com.sun.xml.bind.v2.model.core
>   200 com.sun.xml.bind.v2.runtime.output
>   200 com.sun.xml.bind.v2.bytecode
>   200 com.sun.xml.bind.api
>   200 com.sun.xml.bind.v2.model.impl
>   200 com.sun.xml.bind.v2.model.nav
>   200 com.sun.xml.bind.v2.schemagen
>   200 com.sun.xml.bind.util
>   200 com.sun.xml.bind.v2.runtime.reflect
>   200 com.sun.xml.bind.v2.runtime
>   200 com.sun.xml.bind.annotation
>   200 com.sun.xml.bind.v2.runtime.property
> >  * is there a boot delegation on the com.sun.* packages from the jre ?
> Yes (karaf - 2.1-SNAPSHOT)
> {code}
> as thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Unable to create context
>        at 
> org.apache.camel.component.cxf.CxfConsumer$1.checkFailure(CxfConsumer.java:223)[600:org.apache.camel.camel-cxf:2.5.0]
>        at 
> org.apache.camel.component.cxf.CxfConsumer$1.setResponseBack(CxfConsumer.java:200)[600:org.apache.camel.camel-cxf:2.5.0]
>        at 
> org.apache.camel.component.cxf.CxfConsumer$1.asyncInvoke(CxfConsumer.java:113)[600:org.apache.camel.camel-cxf:2.5.0]
>        at 
> org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:68)[600:org.apache.camel.camel-cxf:2.5.0]
>        at 
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)[:1.6.0_22]
>        at 
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_22]
>        at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_22]
>        at 
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:111)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:311)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:275)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70)[598:org.apache.cxf.bundle:2.2.11]
>        at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.Server.handle(Server.java:326)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
>        at 
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)[569:org.apache.servicemix.bundles.jetty-bundle:6.1.22.1]
> Caused by: java.io.IOException: Unable to create context
>        at 
> org.apache.camel.util.IOHelper.createIOException(IOHelper.java:80)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.IOHelper.createIOException(IOHelper.java:72)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.converter.jaxb.JaxbDataFormat.unmarshal(JaxbDataFormat.java:151)[602:org.apache.camel.camel-jaxb:2.5.0]
>        at 
> org.apache.camel.dataformat.soap.SoapJaxbDataFormat.unmarshal(SoapJaxbDataFormat.java:226)[603:org.apache.camel.camel-soap:2.5.0]
>        at 
> org.apache.camel.processor.UnmarshalProcessor.process(UnmarshalProcessor.java:51)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:174)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.Pipeline.process(Pipeline.java:143)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.Pipeline.process(Pipeline.java:78)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:99)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)[202:org.apache.camel.camel-core:2.5.0]
>        at 
> org.apache.camel.component.cxf.CxfConsumer$1.asyncInvoke(CxfConsumer.java:80)[600:org.apache.camel.camel-cxf:2.5.0]
>        ... 23 more
> Caused by: javax.xml.bind.JAXBException: Unable to create context
>  - with linked exception:
> [java.lang.NoSuchMethodException:
> com.sun.xml.bind.v2.ContextFactory.createContext(java.lang.String,
> java.lang.ClassLoader)]
>        at 
> javax.xml.bind.ContextFinder.find(ContextFinder.java:72)[198:org.apache.servicemix.specs.jaxb-api-2.1:1.5.0]
>        at 
> javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:77)[198:org.apache.servicemix.specs.jaxb-api-2.1:1.5.0]
>        at 
> javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:73)[198:org.apache.servicemix.specs.jaxb-api-2.1:1.5.0]
>        at 
> javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:69)[198:org.apache.servicemix.specs.jaxb-api-2.1:1.5.0]
>        at 
> org.apache.camel.dataformat.soap.SoapJaxbDataFormat.createContext(SoapJaxbDataFormat.java:286)[603:org.apache.camel.camel-soap:2.5.0]
>        at 
> org.apache.camel.converter.jaxb.JaxbDataFormat.getContext(JaxbDataFormat.java:183)[602:org.apache.camel.camel-jaxb:2.5.0]
>        at 
> org.apache.camel.converter.jaxb.JaxbDataFormat.unmarshal(JaxbDataFormat.java:126)[602:org.apache.camel.camel-jaxb:2.5.0]
>        ... 47 more
> Caused by: java.lang.NoSuchMethodException:
> com.sun.xml.bind.v2.ContextFactory.createContext(java.lang.String,
> java.lang.ClassLoader)
>        at java.lang.Class.getMethod(Class.java:1605)[:1.6.0_22]
>        at 
> javax.xml.bind.ContextFinder.find(ContextFinder.java:69)[198:org.apache.servicemix.specs.jaxb-api-2.1:1.5.0]
>        ... 53 more
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to