When the web services exposed on Oracle Services Bus offers more than one operation on the same port, it's necessary to specify the correct selection algorithm to use.
On Oracle Service Bus side is necessary to select "WS-Addressing" as selection algorithm.
On ODI client side it's so possible use a request file with an "action" element in soap header. For example
<soapenv:Envelope xmlns:soapenv='http://www.w3.org/2003/05/soap-envelope'> <soapenv:Header xmlns:wsa='http://www.w3.org/2005/08/addressing'> <wsa:To>http://localhost:9090/axis2/services/order_service</wsa:To> <wsa:Action>http://wso2.org/wsf/c/addr/order</wsa:Action> <wsa:ReplyTo> <wsa:Address>http://localhost:9090/axis2/services/billing_service</wsa:Address> </wsa:ReplyTo> <wsa:FaultTo> <wsa:Address>http://localhost:9090/axis2/services/reorder_service</wsa:Address> </wsa:FaultTo> <wsa:MessageID>a4dfb94a-593b-1dc1-36d2-000000000000</wsa:MessageID> </soapenv:Header> <soapenv:Body> <ns1:order xmlns:ns1='http://wso2.org/wsf/c/addr/sample'> <item>paper</item> <quantity>100</quantity> </ns1:order> </soapenv:Body> </soapenv:Envelope>
Nessun commento:
Posta un commento