Hi all, I come back after long time from my posts. Today, I faced with request from my task. How to call external web service from sender by using SOAP and SAP PI ? After reference my friend, Mr. Dang Vinh Cuong and with his help, I configured this scenario successfully. And I’m happy when share this scenario to you. Ok, Let see šŸ™‚

The flow of this scenario as below

Flow integration SOAP2SOAP

As flow, I define sender is systems from external as SOAPUI, .NET program….. External web service is systems of vendor which integrated with your system using SOAP. For example, I use web service of my design.

In my example, I have method with information. We will use this for example in this scenario.

Step I : Configuration on ESR

Step I.1 : Define structure for request and response message (Data type)

Data type for request
Data type for response

Step I.2 Create Message Type from data type (MT)

Message Type for request
Message Type for response.

Step I.3 Configure Service Interface

  • In this step, we create service interface which use for request from sender to PI
Service Interface for flow request from sender to SAP PI. Using 2 Message Type of request and response which define in step I.2
  • Next, we import external web service (file wsdl) from your computer to service interface. Right click Service Interface => Import service interface => continue at screen introduction => Choose target to import => continue => file WSDL. When finish, We will see as below :
  • And one service interface with this external web service created in Service interface. This is service interface for request from SAP PI to external web service. In my case, I choose function GetConnection and. Default, SAP PI with choose Type is Message Type, but in this case, We use EXTERNAL MESSAGE. And choose input message and output message in list.

Step I.4 Configuration Message Mapping

Message Mapping for request
Message Mapping for Response

Step I.5 Configuration Operation Mapping

Operation mapping with request
Operation mapping for response

The data flow for this scenario in ESR

Step II. Configuration Integration Builder (IB)

Because this scenario is SOAP2SOAP, so we only need two communication channel with type is HTTP / SOAP 1.1 One for sender and one for receiver

Step II.1 Create communication channel for sender ( HTTP/SOAP 1.1)

Step II.2 Create communication channel for receiver (HTTP/SOAP 1.1).

Because in WSDL file , we have many method. So, we need config what SOAP Action use in out scenario. In my case, I use SOAP action as below

Step II.3 : Configure Integrated

Right Click Integrated configuration => New

Configure sender. Reference to step I.2 for information of sender as Interface, Namespace.
  • Configure communication channel for sender
Configure communication for sender.
  • Configure communication component for receiver
  • Configure receiver interface
  • Configure communication for receiver. Outbound processing

Congratulation !! You configured successfully scenario. Now, We ‘ll test this scenario by call web service by SOAP UI Or test in SAP Web service Navigator. Let see result .

Thanks for your reading !!!

One comment

  1. This article is very helpful to me. I configured the PO according to this content, but when I tested the SOAPUI, I returned a 500 error. I don’t know where it is. I have specified the target url and soap action of the receiver. Can you Any opinion?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.