Please also read: IDoc to SOAP scenario using Certificates to create an Asynch-Synch Bridge: Part I

IDoc to SOAP scenario using Certificates to create an Asynch-Synch Bridge: Part I

Creating Sender IDoc Communication Channel which is the important part of scenario.

When we are using the Request Response Bean and Response One Way bean for IDoc adapter we also has to apply the following patches as suggested by SAP.

We also need to apply SAP note 1964506 for this scenario to work.

The following patches were applied.

Screen12.jpg

Configuration Scenario Objects: Create Integrated Configuration (ICo)

Screen14.jpg

SOAP receiver communication channel

Select “Do Not Use SOAP Envelope” as we are creating custom SOAP envelope using XSLT mapping.

Screen15.jpg

The Soap Action can be found in the WSDL provided to us.

Configuring the modules in SOAP Communication Channel

Message transformation Bean is set based on the result SOAP UI screen. See Content-Type in the SOAP UI screenshot of the previous blog(Part I).

Screen16.jpg

Response Mapping in ESR

We have to write an XSLT mapping to remove the SOAP envelop in the response message.

After removing the SOAP envelope from the response mapping we have to map the response structure with ALEAUD Idocs. So we can see there are 2 levels of mapping: XSLT and Graphical.

XSLT Mapping

<?xml version=”1.0″ encoding=”UTF-8″?>

<!–  
<ns0:stylesheet version=”1.0″ xmlns:a=”https://XXXXXXXXXXX.csu.local/CurrencyWSSoap1/Currency_Tool_Web_Service/
xmlns:i=”http://www.w3.org/2001/XMLSchema-instance
xmlns:o=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
xmlns:s=”http://schemas.xmlsoap.org/soap/envelope/
xmlns:u=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
xmlns:ns0=”http://www.w3.org/1999/XSL/Transform
xmlns:ns1=”https://XXXXXXXXXXXXX.csu.local/CurrencyWSSoap1/“>

–>

<ns0:stylesheet version=”1.0″ xmlns:a=”http://schemas.datacontract.org/2004/07/XXXXXXXX.UI.WebService” xmlns:i=”http://www.w3.org/2001/XMLSchema-instance” xmlns:o=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
xmlns:s=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:u=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
xmlns:ns0=”http://www.w3.org/1999/XSL/Transform” xmlns:ns1=”http://tempuri.org/“>

   
<ns0:output method=”xml” version=”1.0″ encoding=”UTF-8″ indent=”yes”/>

   
<ns0:template match=”/”>

    
<ns0:copy-of select=”s:Envelope/s:Body/ns1:loadCurrencyResponse”/>

 
</ns0:template>

</ns0:stylesheet>

Map the response mapping using Graphical Mapping with ALEAUD IDoc structure.

Receiver IDoc channel

This Receiver Idoc communication channel is used to pass the inbound ALEAUD IDocs to SAP ECC.

Screen17.jpg

Apply the Control Records from “Advance Options” manually as they change we move from Dev,QA and PRD systems.

These steps completes our scenario 😎

Testing the Scenario:

Adapter Engine message logs shows a successfully request and response mapping.

Screen18.jpg

Request Message Log:

Screen19.jpg

Response Message Log:

Screen20.jpg

Exceptions:

1. Messages going to status “Cancelled With Error”

Failed to get the input stream from socket iaik.security.ssl.SSLCertificateException

Reason: This exception is returned when there is issue with SSL certificate.

Resolution: Reload the certificate in NWA.

2. Messages going to status “Cancelled With Error”

SOAP:Response message contains error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION – HTTP 500 Internal Server Error

Reason: This exception is returned when there is issue with SOAP Action in the receiver SOAP communication channel.

Resolution: Recheck the SOAP action used in the WSDL and use the same in SOAP communication channel.

Thanks for reading. Kindly request you to share you feedback and comment 🙂

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

Leave a Reply