Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jaxws and camel route within servicemix

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"/>
    </route>
</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.

like image 256
guido Avatar asked Feb 28 '11 21:02

guido


1 Answers

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.

like image 149
chrisjleu Avatar answered Oct 22 '22 15:10

chrisjleu