This content has been marked as final. Show 3 replies
Not sure if it will satisfy your requirement but you can create another wsdl with the required operations, and specify the required url in this proxy(i.e /service/soap), and in this proxy service called the required proxy services which you already created . You may use any branching like operational/conditional or tables like routing tables or dynamic routing to call the three proxy services as requried.
HI aERonAUtical96 ,
<wsdl:port name="SOAP-Port" binding="service-SOAP">As per this you would be having different SoapAction for different operations.
<wsdl:port name="wsn-notify-SOAP-Port" binding="tns:NotificationProducerSOAPBinding">
<wsdl:port name="wsn-subscription-SOAP-Port" binding="tns:SubscriptionManagerSOAPBinding">
Inside Proxy service configuration Operation Selection ConfigurationSelect Selection Algorithm as SOAPAction Header
Other way around is to virtualize your three proxy service( PS_2. ..3... 4 ) with another frontend proxy service.( PS_1) PS_1 ----> PS_2/PS_3/PS_4..----> Business Service
You can make Any SOAP Proxy Service ( PS_1) and handle the SOAP request and then use conditional branching to route it to either PS_2/PS_3/PS_4 on local transport to avoid HTTP call from PS_1 to PS_2/PS_3/PS_4service.
- It is considered good etiquette to reward answer with points (as "helpful" - 5 pts - or "correct" - 10pts).
as far as I could understand from your post it would make more sene to create a BUSINESS service based on the WSDL of the customer. I expect you to contact that (external) service from within the OSB. I guess you will have to create 3 different proxy services (probably based on other WSDL then the one you received from your customer). Each of these proxy services will then invoke one of the operations of the business service.