problems invoking a BPEL process over NMR
jbgill Mar 4, 2010 4:42 PMHi everyone,
I am new to ServiceMix and FUSE. As a proof-of-concept, I am trying to invoke a BPEL process over the NMR via a JAX-WS client, but am running into some problems. (I am attempting this on 4.2.0).
I have a simple BPEL process deployed in a service assembly by itself with an endpoint on the NMR. In the shell, nmr:list shows the following entry for this endpoint:
HelloRPCService:HelloPort
For the client, I am building a CXF web service which calls the bpel. I based this project on the cxf-osgi example. I have attached the modified beans.xml from this project. I have successfully built and deployed this project and am able to call into the injected client proxy which is supposed to invoke the bpel endpoint over the NMR. But instead, I get the following exception in the log file. It seems to indicate that it can't find the matching endpoint. What am I doing wrong? Is it the addressing of the bpel endpoint in the beans.xml? I am not able to find anything helpful in my searches of the documentation and other web sites. Here's the excerpt fro the log file:
14:16:56,541 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 91 | invoking service interface wsdl.rpc.helloworld2.HelloPortType
14:16:56,542 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 103 | create message exchange svc: HelloRPCService
14:16:56,542 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 114 | exchange endpoint: HelloRPCService
14:16:56,542 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 115 | setup message contents on Message []
14:16:56,543 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 117 | service for exchange HelloRPCService
14:16:56,543 | INFO | 66@qtp-1613992-0 | NMRConduitOutputStream | sport.nmr.NMRConduitOutputStream 125 | sending message
14:16:56,543 | WARN | 66@qtp-1613992-0 | NMR | .servicemix.nmr.core.ChannelImpl 293 | Error processing exchange [
id: 78d1d4fb-8b20-489b-93fa-a202db45a03d
mep: InOut
status: Active
role: Consumer
target: PropertyMatchingReference[{INTERFACE_NAME={urn:/HelloWorld2-RPC.wsdl}HelloPortType, SERVICE_NAME=HelloRPCService}]
operation: Hello
In: [
content: javax.xml.transform.stream.StreamSource@1a8692d
]
]
org.apache.servicemix.nmr.api.ServiceMixException: Could not dispatch exchange. No matching endpoints.
at org.apache.servicemix.nmr.core.FlowRegistryImpl.dispatch(FlowRegistryImpl.java:110)
at org.apache.servicemix.nmr.core.ChannelImpl.dispatch(ChannelImpl.java:286)
at org.apache.servicemix.nmr.core.ChannelImpl.sendSync(ChannelImpl.java:141)
at org.apache.servicemix.nmr.core.ChannelImpl.sendSync(ChannelImpl.java:127)
at org.apache.servicemix.cxf.transport.nmr.NMRConduitOutputStream.commitOutputMessage(NMRConduitOutputStream.java:127)
at org.apache.servicemix.cxf.transport.nmr.NMRConduitOutputStream.doClose(NMRConduitOutputStream.java:77)
at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:185)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:484)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:310)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:262)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
at $Proxy162.hello(Unknown Source)
at org.apache.servicemix.examples.cxf.HelloWorldImpl.sayHi(HelloWorldImpl.java:35)
-
beans.xml 1.3 KB