cancel
Showing results for 
Search instead for 
Did you mean: 

How to create web service in R/3 - 4.7 / WAS 6.20

Former Member
0 Kudos

Dear ladies and gentlemen,

I am totaly green in this area so any help (or opinion) is appreciated.

WAS 6.40 has functions that allow to turn function module into web service. We are @ 6.20, so the questions would be:

- how to create web service in R/3 - 4.7 / WAS 6.20

- is it possible to upgrade to R/3 - 4.7 / WAS 6.40

Best regards

Maros Lukac

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Question 1: With 6.20 every function module that is rfc enabled is exposed automatically as web service. for example if you have a FM named ZTEST you can access the wsdl for that service via http://<hostname>:<portnumber>/sap/bc/soap/wsdl11?services=ZTEST&sap-client=<client>&sap-user=<usern...;

where hostname = server name, portnumber = 8001 for example (to check from http port parameter), client/username and password from the R3 system

Question 2: Yes you can.

Former Member
0 Kudos

Hi Andre,

it does not work - very little idea why:

- port? I tried 8001 and 8080, but neither one worked. Is there any way how to check WAS which one to use?

- ...wsdl11?... ? - whenever I see constant I ask why?

Why 11?

Is there any documentation (online help/pdf/other forums) to review. That would be really great.

Best regards

Maros

Former Member
0 Kudos

I'm assuming you have some basis background here. otherwise it might be difficult to proceed for you. you can get the configuration of the WAS in the DEFAULT profile parameters using RZ10 trsansaction code and look for ms/http_port. The prerequisite here is that the system has been setup by basis group.

WSDL11 is the default service port used to reach from http all the rfc-enabled function modules. It'll wrapped the function modules with all the input and output parameters in a SOAP envelope and exposed that fucntion module as a web service (go to SICF transaction, default_host -> sap -> bc -> soap -> wsdl11)

I would strongly recommend the SAP documentation of the webas 6.20 (or of the application it's used for) for configuration and usage purposes. Unfortunately I cannot be more precise as I don't have 6.20

Former Member
0 Kudos

here is the documentation of the was 6.20

https://www.sdn.sap.com/sdn/developerareas/was.sdn?page=WebAS_620.htm

Alos try the Developer Areas -> Web Application Server -> Web Services.

Good luck.

Former Member
0 Kudos

I have as much basis background, as I needed as an ABAP developer so far (= a little). I am not capable to check whether we have J2EE portion of WAS installed (do not even know whether it can be not installed).

ms/http_port was not set, so I assume 8080 was the default. Anyway - just to be sure I set it to 8001. The system will be restarted and tomorrow I'll check again.

SICF is giving me SR053 error. I searched OSS notes and found nothing so I opened a ticket. That will take a bit longer.

Former Member
0 Kudos

Hi Maros,

I would like to relate more information on this subject, as we have implemented Web services for basis 6.20 systems. However, since the 6.20 basis system doesn't provide web services directly, you'd use XI 3.0 to expose a BAPI (or any other function module) from the R/3 system through the use of a synchronous proxy.

The web service will be called like this:

Caller -> XI (http SOAP call) -> R/3 proxy -> XI proxy -> back to the caller.

This solution doesn't require you to install a J2EE engine for the R/3 system, only on the XI 3.0 system you install.

There should already be many how-to guides on this subject, so I will not relate the whole process of configuring this solution.

As to your http port, it's by default 81XX where XX stands for your central instance's system number, but this isn't configurable through SICF. Instead, you can check this out in RZ11 or RZ10 (though you need to take the system down for changes to have effect).

You should also look into your individual instance's (if you have more than one) http ports, which are by default 80XX, where XX is the instance's system number.

Best regards,

Daniel

athavanraja
Active Contributor
0 Kudos

Regarding getting the server port details of your WAS

approach one:

from se80 open any bsp application , double clikc on a page and in the properites tab of the page you can find the server:port details.

approach 2.

use the following FM

CALL FUNCTION 'TH_GET_VIRT_HOST_DATA'

EXPORTING

protocol = 1

virt_idx = 0

  • LOCAL = 1

IMPORTING

hostname = server

port = port

EXCEPTIONS

not_found = 1

internal_error = 2

OTHERS = 3 .

there are couple of excellent weblogs by Thomas Jung on this subject.

Developing ABAP websevice

/people/thomas.jung3/blog/2004/11/15/bsp-150-a-developer146s-journal-part-xiii-developing-abap-webservices

Consuming webservice from ABAP

/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap

and check out the all the other webservice related and other weblog by Thomas

/people/thomas.jung3/blog

Regards

Raja

Former Member
0 Kudos

Thank you very much guys for replying. I got better picture of what is necessary. Unfortunately I had to put this on ice and it seems it will be there for a while.

Anyway, form time to time I go and read the replies/award points for the answers

Answers (0)