Hi Guys,
It looks like you want to use a single service as a facade to the multiple
services behind the scenes.  Camel can do that.  Does the service that you
want to use as the facade have a WSDL/Service Spec?  If yes, you can set up
a CXF endpoint in either Payload or POJO mode for that service.  Your route
can then provide a content based router to route to your other services.

I would start up configuring a simple route with your back end services and
then put a facade in front of it.

For example in payload mode:

  <cxf:cxfEndpoint 
    id="myBackendService"
    address="http://localhost:8080/backend";
    wsdlURL="classpath:backend.wsdl"
    serviceName="test:ServiceService"
    endpointName="test:Service"
    xmlns:test="http://www.test.com";
    />

  <cxf:cxfEndpoint 
    id="myFacadeService"
    address="http://localhost:8080/backend";
    wsdlURL="classpath:facade.wsdl"
    serviceName="test:ServiceService"
    endpointName="test:Service"
    xmlns:test="http://www.test.com";
    />

    <camel:route errorHandlerRef="myDeadLetterErrorHandler">
      <camel:from uri="cxf:bean:myFacadeService?format=PAYLOAD"/>
      
      insert content based router here based on operation name or using
XPath filtering on content in message      
        
       <camel:to uri="cxf:bean:myBackendService?format=PAYLOAD"/>
    </camel:route>

You can also set up other routes to feed your web service like a simple file
drop.  If you prefer to do that outside of Camel, a tool like Soap UI would
help.  Start off my exposing  single service in your route and build up from
there.  You can use some of the existing Maven archetypes to get you up and
running pretty fast.

Cheers,
Yogesh

--
View this message in context: 
http://camel.465427.n5.nabble.com/Using-Camel-to-as-WS-Broker-tp5489513p5491253.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to