This post demonstrated sync sender SOAP to SAP PI, then PI call another receiver SOAP currency web service, then return the currency exchange rate response back to original SOAP requester.
Overview flow:
The external web service tested is this free currency convertor from www.webservicex.net.
Web Service = http://www.webservicex.net/CurrencyConvertor.asmx
WSDL file = http://www.webservicex.net/CurrencyConvertor.asmx?WSDL
Operation = http://www.webservicex.net/CurrencyConvertor.asmx?op=ConversionRate
Action = “http://www.webserviceX.NET/ConversionRate”
First, do a self test directly at ConversionRate operation = http://www.webservicex.net/CurrencyConvertor.asmx?op=ConversionRate
Enter currency pair, example “USD” and “MYR”, click Invoke.
Exchange rate result. One USD equal to 3.7883 MYR. What a weak MYR currency…
Setup ESR:
a) Download WSDL file from http://www.webservicex.net/CurrencyConvertor.asmx?WSDL, save it as any naming with .wsdl file extension.
b) Create External Definitions “CurrencyConvertor” by import WDSL file, you will have SI “CurrencyConvertorSoap” and 2 others HttpGet and HttpPost SI automatically added.
c) Create DT and MT.(Refer screen capture for structure and fields detail).
d) Create SI_CURRENCY_OUT_SYNC (for request and response between SoapUI and SAP PI).
e) Create SI_RATE_IN_SYNC (for request and response between SAP PI and external web service).
f) Create both MM for request and response.
g) Create OM and assign SI.
OM:
Setup ID:
a) Create sender SOAP adapter for sender BC_TEST
b) Create receiver SOAP adater for receiver BC_EXTERNAL
c) Create standard 4 ID object, sender agreement, receiver determination, interface determination and receiver agreement as usual to link all objects together.
Sender SOAP adapter:
Receiver SOAP adapter:
Detailed flow:
Test result in SOAP UI tool:
Keep on smiling 🙂
SOAP2SOAP – Sync Sender SOAP to Sync Receiver SOAP Currency Web Service