cancel
Showing results for 
Search instead for 
Did you mean: 

xi proxy and rfc webservice

Former Member
0 Kudos

hi there,

what are the diffrences between xi proxy and rfc web services in sap.and can we use the xi proxy service directly to create a soap java client.

thanks

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Zain,

Reading such a long discussion, I got confusued. Before giving any suggestion, I would like to ask a couple of qns.

a) Do you want to expose an existing function module /BAPI as a webservice ?

b) Do you want to expose any XI interface as web service?

Well in both the cases you get the WSDL and can consume that web service using your java soap client.

As Anton suggeted you can either select document or rpc sytle of the WSDL and it should not throw any error as such. If that is the case, check if you have created the function module properly or exposed that properly.

Secondly, if you want to use an XI itnerface as a webservice, please refer to

Riyaz's blog /people/riyaz.sayyad/blog/2006/05/07/consuming-xi-web-services-using-web-dynpro-150-part-i

or Siva's blog /people/siva.maranani/blog/2005/03/01/testing-xi-exposed-web-services

Regards

Pushkar

former_member239282
Active Participant
0 Kudos

Hi Zain,

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.

You can have a SAP Web Dynpro client sending a Web service request to SAP XI. The request performs a credit limit check and contains the amount as one of the input parameters. Based on a routing rule in SAP XI, the Web service request is directed to an SAP R/3 system (for small amounts) or to a .NET application (for larger amount).

So, to use Web services clients for external communication, you have to configure the HTTP proxy settings first.

    • if it helpful reward points are appreciated

Former Member
0 Kudos

hi there,

As far as i understand it is possible to use the standard XI proxy services using webdynpro and visual composer as these services are shown in a document style in the soap, but to use the web service in java client we need the web service in the rpc format.

then how do we change the existing wsdl which is in document style to rpc style.

and how do we configure the http proxy for the proxy service.

thanks

Former Member
0 Kudos

zain,

you can of course call document style WSDLs in Java too.

If you need it RPC style just have a look at the WSDL's URL. You see an URL parameter style which you have to set to 'rpc' instead of 'document'. If you view the WSDL from transaction WSADMIN you are even presented with a popup which lets you choose between RPC and DOCUMENT.

Concerning your question about the HTTP proxy config I don't understand your problem. You have to configure your system llandscape such that an incoming request is properly routed to your service, which means, you need an address resolvable by the calling client and a router which routes it to the backend service. No big deal for a network admin.

regards, anton

Former Member
0 Kudos

hi there,

yes, as i know that we can select from the menu that which style we can represent the wsdl but when i try to select the rpc for the XI proxy web services it is not displaying the wsdl it is giving the following error.

i was able to call the web service using visual composer and display in portal what i would like to do is call the same web service using a simple java porgram. but i think to call the web service in java client how to do it...

A Soap Core Exception was raised in Method ::(0)

and how can i configure the http proxy for XI web service give some hints .. in detail.