- 
        1. Re: Problem using XPATH with cameldavsclaus Sep 7, 2010 11:36 AM (in response to rkozura)Use google to find hits about that exception. And maybe try adding in the route to convert to String so the data can be read multiple times. I bet CXF may use streams. You can also enable stream caching 
- 
        2. Re: Problem using XPATH with camelnjiang Sep 7, 2010 8:08 PM (in response to rkozura)Ah, org.apache.cxf.message.MessageContentsList. You are using the POJO dataformat of camel-cxf endpoint, please try to use Message dataformat and cache the inputstream. 
- 
        3. Re: Problem using XPATH with camelrkozura Sep 8, 2010 9:51 AM (in response to njiang)Thank you for the help! I enabled streamCaching on my route. My cxf endpoint is already in message mode: @WebServiceProvider() @ServiceMode(Mode.MESSAGE) public class Router implements Provider, however the beans are not processed. Here is a general bean I have: public SOAPMessage processSOAP(Exchange exchange) { System.out.println("Got here."); //I GET HERE! ... } 
- 
        4. Re: Problem using XPATH with camelnjiang Sep 9, 2010 8:48 PM (in response to rkozura)Did your bean processSOAP method print "Got here" ? Can you show us the stack trace? You are using the WebServiceProvider, so you can get the SOAPMessage from the exchange.getInMessage().getBody(SOAPMessage.class). But if convert the message body into String, you can't use the upper code anymore. Willem 
- 
        5. Re: Problem using XPATH with camelrkozura Sep 10, 2010 2:39 PM (in response to njiang)Sure: org.apache.cxf.interceptor.Fault at org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:101) at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37) at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243) at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:110) at org.apache.cxf.transport.http_osgi.OsgiDestination.doMessage(OsgiDestination.java:79) at org.apache.cxf.transport.http_osgi.OsgiServletController.invokeDestination(OsgiServletController.java:327) at org.apache.cxf.transport.http_osgi.OsgiServletController.invoke(OsgiServletController.java:151) at org.apache.cxf.transport.http_osgi.OsgiServlet.invoke(OsgiServlet.java:53) at org.apache.cxf.transport.http_osgi.SpringOsgiServlet.invoke(SpringOsgiServlet.java:48) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:103) at javax.servlet.http.HttpServlet.service(HttpServlet.java:713) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390) at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.handle(HttpServiceServletHandler.java:64) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.handle(HttpServiceContext.java:111) at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:64) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) Caused by: java.lang.NullPointerException at org.apache.servicemix.examples.demo_soap.MyTransform.processSOAP(MyTransform.java:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:592) at org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:214) at org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:133) at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:137) at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:95) at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:65) at org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:97) at org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:95) at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:146) at org.apache.camel.processor.SendProcessor.doProcess(SendProcessor.java:94) at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:82) at org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) at org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82) at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93) at org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:52) at org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177) at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88) at org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228) at org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:51) at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) at org.apache.camel.processor.DelegateProcessor.processNext(DelegateProcessor.java:53) at org.apache.camel.processor.DelegateProcessor.proceed(DelegateProcessor.java:82) at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:93) at org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:52) at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) at org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:177) at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:143) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88) at org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49) at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:228) at org.apache.camel.processor.Pipeline.process(Pipeline.java:74) at org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:66) at org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48) at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:67) at org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:91) ... 33 more I do indeed get the message: "Got here" There are two options I can think of to fix this: 1. Convert the body back to the original format. I have tried this and it does not work. 2. Have the bean method accept a String and try and build a response from that. 
- 
        6. Re: Problem using XPATH with camelnjiang Sep 10, 2010 9:55 PM (in response to rkozura)It's a NPE from the MyTransoform.java. Caused by: java.lang.NullPointerException at org.apache.servicemix.examples.demo_soap.MyTransform.processSOAP(MyTransform.java:40) I need to have a look at it. Willem 
 
     
    