Communication using Web services is synchronous and point-to-point. When a call is made to the webservice from an SAP system, the connection can either be
- Point-to-point communication
- Routing through XI
When the message is routed through XI, it will use SOAP Adapter to invoke the Webservice. In the current scenario we will go through the steps involved for establishing a Point-to-point communication between SAP system and Webservice (this Webservice happens to be on another SAP System generated for a XI message Interface). In the process, we will use the ABAP Proxies (Both Client and Server Proxies) and Webservice runtime Infrastructure (of WebAs) to establish the communication between the two SAP Systems. Later we will also have a look at how to convert this point-to-point communication to route the message through XI.
Sequence of Steps:
Below are the sequences of steps to be followed in XI design time and SAP Systems (in Client & Server systems) to exchange messages.
In XI–Design Time:
- Create the synchronous Message Interface using which the Sender and the receiver system will communicate. Both message interfaces use the same message type for the request, response.
In SAP System (Server Application):
- Create an ABAP Server Proxy (Use SPROXY Tcode for generating proxies).Refer to ABAP Server Proxies
- Create a Virtual interface for the server proxy and expose it as a webservice
2.1 Double click on the proxy object and click on the Webservice Wizard. The wizard will guide you through the rest of the procedure. The endpoint of the webservice will be for a XI message interface. Create Virtual Interface & webservice.
2.2 Go to WSCONFIG and release the webservice for SOAP runtime.
2.3 Go to WSADMIN and Release the webservice.
In SAP System (Client Application):
- Create an ABAP Client Proxy (Use SPROXY Tcode for generating proxies). Refer to ABAP Proxies in XI(Client Proxy)
- Go to SM59 and create an RFC Destination (Type H) to point to the webservice that has been created.
2.1 Enter the path of the Web service that you released in transaction WSADMIN as the Path Prefix U can find this link in the Webservice that has been created.
2.2 In the Logon/Security specify the Logon Data of the Server SAP System.
2.3 Go to LPCONFIG, Create a logical port for the Client Proxy Class. ZCO_FLIGHT_DATA_OUT_MI is the name of the ABAP Class generated for Server Proxy
In General Settings Frame,
Run time Tab–>Choose Webservice Infrastructure;
Call Parameters–>Mention the HTTP Destination (created in sm59)
Enhancement from Point-to-point to Routing through XI
In the Client System, Go to LPCONFIG and in General Settings Frame, Run time Tab, Choose Exchange Infrastructure. No changes have to be made to Client Proxy to route the message through XI.
You will be successfully able establish a point-to-point communication between SAP System and any Webservice.