Hey,

I'm using Camel (2.10.3) to proxy a webservice (and insert some custom
headers):

from("cxf:bean:brokerOrderLimit?dataFormat=CXF_MESSAGE")
 .process(soapHeadersEnricher)
.to("cxf:bean:thalerOrderLimit?dataFormat=CXF_MESSAGE");

When the 'thalerOrderLimit' bean sends back a SOAPFault I just want to the
client caller to receive this (actually I want to look into the SOAPFault
and in one special case I want to modify the soap headers and redeliver,
else just deliver the fault to the client, but I'm taking baby steps here).

With the above config however I'm getting:
java.lang.NullPointerException
at
org.apache.cxf.interceptor.ClientFaultConverter.getConstructor(ClientFaultConverter.java:204)[cxf-api-2.6.3.jar:2.6.3]
 at
org.apache.cxf.interceptor.ClientFaultConverter.processFaultDetail(ClientFaultConverter.java:176)[cxf-api-2.6.3.jar:2.6.3]
at
org.apache.cxf.interceptor.ClientFaultConverter.handleMessage(ClientFaultConverter.java:80)[cxf-api-2.6.3.jar:2.6.3]
 at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)[cxf-api-2.6.3.jar:2.6.3]
at
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:112)[cxf-api-2.6.3.jar:2.6.3]
 at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)[cxf-rt-bindings-soap-2.6.3.jar:2.6.3]
 at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)[cxf-rt-bindings-soap-2.6.3.jar:2.6.3]
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)[cxf-api-2.6.3.jar:2.6.3]
 at
org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:783)[cxf-api-2.6.3.jar:2.6.3]
at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1694)[cxf-rt-transports-http-2.6.3.jar:2.6.3]
 at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream$1.run(HTTPConduit.java:1535)[cxf-rt-transports-http-2.6.3.jar:2.6.3]
at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:426)[cxf-api-2.6.3.jar:2.6.3]
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)[:1.6.0_21]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)[:1.6.0_21]
 at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:351)[cxf-api-2.6.3.jar:2.6.3]
at java.lang.Thread.run(Unknown Source)[:1.6.0_21]
Exception in thread "default-workqueue-1" java.lang.NullPointerException
at
org.apache.camel.component.cxf.DefaultCxfBinding.getContentFromCxf(DefaultCxfBinding.java:642)
 at
org.apache.camel.component.cxf.DefaultCxfBinding.populateExchangeFromCxfResponse(DefaultCxfBinding.java:151)
at
org.apache.camel.component.cxf.CxfClientCallback.handleException(CxfClientCallback.java:81)
 at
org.apache.cxf.interceptor.ClientOutFaultObserver.onMessage(ClientOutFaultObserver.java:59)
at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream$1.run(HTTPConduit.java:1540)
 at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$3.run(AutomaticWorkQueueImpl.java:426)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at
org.apache.cxf.workqueue.AutomaticWorkQueueImpl$AWQThreadFactory$1.run(AutomaticWorkQueueImpl.java:351)
 at java.lang.Thread.run(Unknown Source)

I've read through the chapter of error handling in the Camel in Action book
but I don't know if this has anything to do with my configuration?

Reply via email to