Test SAP HTTP connection ready for REST Web Service call



This is the second part of a series that will teach you how to consume/use/call a Web Service from within your SAP system and use the data received to perform and action within your ABAP code.  

If you want to call a REST Web Service from your SAP system you should first test SAP HTTP Connection to make sure your SAP system has access to the outside world and the particular Web service you want to call. Again using the REST web service http://gturnquist-quoters.cfapps.io/api/random, which I found on https://spring.io/guides/gs/consuming-rest/ so have a look on here if it has stopped working for some reason.

There are actually some very basic and easy to use ABAP programs that will help you do this. They have been around for a long time but you may not have come across them before if you haven't had to deal with HTTP connections. I suspect there are many people just finding out about these while learning about web service calls.


SAPHTML_DEMO1 ABAP report

This is basically a simple ABAP based web browser, think chrome, IE but within the SAP GUI. This simply allows you to view a web page so by Inserting your Web Service URL (or any URL) you can confirm that your SAP system has access to the internet. You may already know it has access but this is a good way to prove it if you are trying to pinpoint a communication issue. I have been asked before does your SAP system have access to the internet to which my reply has been yes of course it has...but how do I demonstrate that quickly???

To use this ABAP report simply execute transaction code SE38, enter program name  SAPHTML_DEMO1 and hit execute.

This example Rest service will try and download the response into a file.

Test SAP HTTP Connection with SAPHTML_DEMO1

But you could also test access to the internet as a whole by entering any website such as google.com

SAPHTML_DEMO1

SAPHTML_DEMO1

RSWF_TEST_HTTP

The RSWF_TEST_HTTP ABAP report allows you to test the HTTP connection to your Web Service to ensure it is communicating ok. To do this again go to t-code SE38 and enter the report name as RSWF_TEST_HTTP and hit execute.

execute RSWF_TEST_HTTP_1

Now enter the URL of your Web Service i.e. http://gturnquist-quoters.cfapps.io/api/random.

test http connection using RSWF_TEST_HTTP RSWF_TEST_HTTP

You will then see the results of the test

RSWF_TEST_HTTP test result
Progress Bar

The next step in the series is to call the web service from within your SAP system. There are two options to do this, either within a BSP using HTML and JS code or within your ABAP code using the HTTP Object Methods. In my opinion the HTML/JS way of calling a Web Service from SAP should be the best solution but it does not always work if the Web Service does not handle cross domain origins correctly    

Test Web Service using POSTMAN

How to quickly test your REST Web Service using GetPostMan


Save layout ALV button missing
If you have implemented your SAP ALV report and all works fine apart from the Save layout ALV button, you[...]
ABAP sorted table insert TABLE_ILLEGAL_STATEMENT SAP error
Remember when doing a sorted table insert you should use the INSERT ABAP statement instead of APPEND, but maybe you[...]
SOAMANAGER SAP does not load or open browser window
When you execute SOAMANAGER sometimes it may not load your internet browser windows and seems like it does not do[...]
SAP HANA development platforms
SAP Web IDE for SAP HANA SAP HANA studio SAP HANA Web-based Development Workbench SAP Web IDE for SAP HANA[...]
Recursive call error of function module ‘CRM_ORDER_MAINTAIN’
The SAP CRM Recursive call error for SAP function module CRM_ORDER_MAINTAIN is caused by nested calling of the FM i.e.[...]
SAP LSMW basic creation to call ABAP code
Use a basic LSMW object to execute ABAP code to update values on your SAP system.

About the Author se80