Manual Setup of Logical Port
Process for consuming a web service is to generate a consumer proxy, create a logical port and call the generated consumer proxy in a program. Logical port is created using transaction SOAMANAGER. Logical port can be created using the web service WSDL URL, or using a WSDL file, or by Manual Configuration. Using the WSDL is the preferred approach, but if for some reason you are having trouble, this blog documents the process of using manual configuration options for creating a logical port.
You are a SAP Developer and have been asked to consume a web service that the .NET team in your organization has created. The .NET team informs you that the URL for the web service is “https://intranet.abc.com/ws/ws.asmx”. The web service doesn’t require a userid / password for access. You have successfully generated a consumer proxy. You are familiar with transaction SOAMANAGER and go through the steps to create a logical port. You get the error “Error: HTTP: Error in interface for management of HTTP destinations”. You try to use the URL using file access option and still no success. You decide to try the Manual Configuration option.
This blog assumes familiarity with the SOAMANAGER transaction. If not, please review SAP help and lots of other blogs on SDN. I have added some of the them in the reference section below.
Solution – Creating a Logical Port using Manual Configuration
Please follow the basic steps listed here to start the process of creating a logical port using manual configuration:
- Execute transaction SOAMANAGER,
- select tab “Application and Scenario Communication”.
- Select link “Single Service Administration”.
- Select your consumer proxy and click on apply selection.
- Click on the button Create Logical port, input a technical name and description.
- Select the Manual Configuration radio button and select Next
The logical port maintenance transaction has five tabs. For manual configuration, you are required to configure fields in the three tabs shown in Figure 1 below.
The only field that needs to be changed is Message ID Protocol. Since the web service doesn’t require Userid / password, the field should be set to “Suppress ID Transfer”.
Figure 1: Over view screen and Messaging tab settings
Transport Settings Tab
This tab is used to specify the location of the web service and the transfer protocol (HTTP or HTTPS). The fields highlighted in Figure 2 below need to be configured.
Figure 2: Transport Settings tab
Operation Specific Tab
This tab links the operations of the web service to its action. To complete this task, you will need to look at the WSDL of the web service. Search for <soap action..> tag.
Figure 3: Operation Specific tab settings
Open the WSDL and look for soapAction for each operation of the operation. You will see operation names automatically populated on the left. Select each operation and populate the SOAP Action field on the right with the value from the WSDL.
<soap:operation soapAction=”http://ws.cdyne.com/WeatherWS/GetCityForecastByZIP” style=”document” />
So for the example WSDL above, operation “GetCityForecastByZIP” should get the SOAP action value of “http://ws.cdyne.com/WeatherWS/GetCityForecastByZIP“
Once you have assigned SOAP action for all the operations click Save to activate the Logical Port binding. You should be able to test your consumer proxy now using the newly created port.
Being able to configure a Logical port using manual configuration can help you keep making progress in your development effort, while the basis team resolves HTTP error in the URL based configuration process.
- SOAMANAGER help: http://help.sap.com/saphelp_nw70/helpdata/EN/b0/787748cf3a4200bb1ba32a62aa8519/frameset.htm
- Consuming web service in ABAP – See my earlier blog http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/17492 on consuming web services with <ANY> tag if you are having trouble with consumer proxy. Other links – http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/8086, http://help.sap.com/saphelp_nw70/helpdata/en/47/3a989cbcef2f35e10000000a1553f6/frameset.htm
- XML to ABAP and ABAP to XML Transformation – http://help.sap.com/saphelp_nw70/helpdata/en/e3/7d4719ca581441b6841f1054ff1326/frameset.htm
- Other folks with HTTP error – http://forums.sdn.sap.com/thread.jspa?threadID=1428458
- Thanks to Todd Miller and Ali Mohammed in helping me find the right combination of settings to make this work.
- sap pi tutorials ,sap pi training