multi services in one CXF component
glindmeyer May 17, 2011 3:01 AMHi,
when more than one service is defined in the xbean.xml of the cxf component, no error occurs during deployment. However, only the first service can be called from a client whereas a call to the second one does not work properly and leads to the following return message:
STATUS: 500
The version is
apache-servicemix-4.3.1-fuse-01-09
The xbean.xml:
<cxfbc:consumer wsdl="classpath:testWS.wsdl"
targetEndpoint="tns:testWSSoap"
targetService="tns:testWS"
locationURI="http://localhost:8292/Hello/"
useJBIWrapper="false"
useSOAPEnvelope="true"
/>
<cxfbc:provider wsdl="classpath:testWS.wsdl"
service="tns:testWS"
endpoint="tns:testWSSoap"
useJBIWrapper="false"
useSOAPEnvelope="true"
/>
<cxfbc:consumer wsdl="classpath:testWS2.wsdl"
locationURI="http://localhost:8192/Hello2/"
targetService="tns:testWS2"
targetEndpoint="tns:testWSSoap2"
useJBIWrapper="false"
useSOAPEnvelope="true"
/>
<cxfbc:provider wsdl="classpath:testWS2.wsdl"
endpoint="tns:testWSoap2"
service="tns:testWS2"
useJBIWrapper="false"
useSOAPEnvelope="true"
/>
</beans>
The corresponding warning message of the log file:
0:16:57,300 | WARN | qtp25075962-115 | PhaseInterceptorChain | - - | Interceptor for testWS#HelloWorld has thrown exception, unwinding now
java.lang.NullPointerException
at org.apache.servicemix.cxfbc.CxfBcConsumer$JbiPostInvokerInterceptor.handleMessage(CxfBcConsumer.java:941)(149:servicemix-cxf-bc:2011.01.0.fuse-01-09)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorChain.java:224)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:70)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.apache.servicemix.cxfbc.CxfBcConsumer$JbiChainInitiationObserver.onMessage(CxfBcConsumer.java:740)(149:servicemix-cxf-bc:2011.01.0.fuse-01-09)
at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:311)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:280)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)(135:org.apache.cxf.bundle:2.3.3.fuse-01-09)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:936)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:873)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:185)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.Server.handleAsync(Server.java:391)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:586)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:395)(142:org.eclipse.jetty.server:7.3.1.v20110307)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:526)(137:org.eclipse.jetty.io:7.3.1.v20110307)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:41)(137:org.eclipse.jetty.io:7.3.1.v20110307)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:528)(136:org.eclipse.jetty.util:7.3.1.v20110307)
at java.lang.Thread.run(Thread.java:619)(:1.6.0_11)
I would be very grateful for any suggestions.
Regards,
Annette