I would like to do something like this:
<jaxws:endpoint id="AbcEsbHTTPEndpoint"
implementor="com.abc.esb.ABCWSServiceImpl"
address="/ABCWSServiceService"
wsdlLocation="wsdl/ABCWSService.wsdl"
endpointName="e:ABCWSService"
serviceName="s:ABCWSServiceService"
xmlns:e="http://com.abc.esb/abcesb/services/ABCWSService"
xmlns:s="http://com.abc.esb/abcesb/services/ABCWSService">
</jaxws:endpoint>
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="cxf:bean://ABCWSServiceService"/>
<to uri="cxf:bean:decodeClient"/>
</rout开发者_StackOverflow中文版e>
</camelContext>
<jaxws:client id="decodeClient"
address="http://ESB-DEV1:9081/abcesb/services/Decoder"
wsdlLocation="http://ESB-DEV1:9081/abcesb/services/Decoder?wsdl"
serviceClass="com.abc.esb.ABCServiceInterface"
abstract="true" >
</jaxws:client>
I don't understand how to configure the camel route from the <jaxws:endpoint
> to the <jaxws:client
> What is the syntax to use?? I know you can use <cxf:cxfEndpoint
> but I don't want to use that if I don't have to.
I know how to do this with JBI, but I'm wanting to deploy this into servicemix using a OSGI bundle, not JBI.
The jaxws:client
you have in your configuration is an endpoint as is the jaxws:endpoint
and could be connected using the bean component:
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="bean:AbcEsbHTTPEndpoint"/>
<to uri="bean:decodeClient"/>
</route>
</camelContext>
Usually there's a need to do something in between - say to adapt the message in some way - but the above will achieve the routing at least.
See some of the cxf examples from the examples in the camel distribution. They show how to setup cxf, not as jbi.
精彩评论