cancel
Showing results for 
Search instead for 
Did you mean: 

Define Web Service - Send Asynchronous Message

Former Member
0 Kudos

Hi All,

I have to send an asynchronous message from a java web application to XI. For this I tried to used the Define Web Service option in XI. However the documentation says that this tool can be used only for Synchronous interfaces. Is this the case even now? What would be an alternate approach to accomplish this?

Thanks,

Sandeep

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

As explained above , no need to have the webservice only in the case of Sync communication , you can also achieve this by way of generating the WSDL from ID -- tools and added the Quality of service = EO.

Please see the below links to get more details

Check this SAP Help-

http://help.sap.com/saphelp_nw2004s/helpdata/en/48/d5a1fe5f317a4e8e35801ed2c88246/frameset.htm

Communication between SAP System & Webservice Using Proxies - /people/siva.maranani/blog/2005/05/23/communication-between-sap-system-webservice-using-proxies

Also see the below links about webservices

/people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1

/people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2

/people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi

/people/siva.maranani/blog/2005/03/01/testing-xi-exposed-web-services

/people/michal.krawczyk2/blog/2005/03/29/configuring-the-sender-rfc-adapter--step-by-step

https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2131 [original link is broken] [original link is broken] [original link is broken] [original link is broken]

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/336365d3-0401-0010-9884-a651295a...

Regards

Chilla..

<i>Points rewarded if it is helpful..</i>

bhavesh_kantilal
Active Contributor
0 Kudos

Hi,

You can Generate WSDL's for Asynchronous Interfaces also. It is not needed that you Select only a Synchronous Interface.

While generating the WSDL in the Integration Directory using Tools --> Defined Webservice, you will be able to select your Outbounf Asynch interface also.

Just remember that while defining the WSDL Url you will need to append the following parameter to the end of the url,

<b>&QualityOfService=ExactlyOnce</b>

Regards

Bhavesh

Former Member
0 Kudos

Many Thanks Bhavesh, Could you please suggest some blogs or other resources which talks more about this?

Also, Which is a better option? Provide a URL by ourselves or use the Propose URL feature? I assume that I need to add &QualityOfService=ExactlyOnce at the end of the proposed URL. Is this right?

To download this WSDL from a remote system what URL can we use?

Thanks,

Sandeep

bhavesh_kantilal
Active Contributor
0 Kudos

Sandeep,

Provide URL and Propose URL are a bit different

1. When you provide URL as pointed in the How to Guide - How to use SOAP Adapter, the SOAP message is sent to the Adapter Engine and the sender SOAP adapter forwards it to the Integration Engine. The port used will be the J2EE engine port.

This is discusses in the How to Guide. - How to use SOAP adapter.

2. The Propose URL is used when you want to send the SOAP message by passing the Adapter Engine directly to the Integration Engine. In this case you do not need a Sender SOAP adapter and the port used is the HTTP port.

This option is discusses in this blog by Stefan Grube,

/people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine

Let me know if you need mofre inputs.

Regards

Bhavesh

Former Member
0 Kudos

Once again thanks to you Bhavesh. I have one more question.

How do I provide the userName and password while I consume the web service. I'm sending the message from a java application. Can the userName and password be also embedded in the URL?

Thanks,

Sandeep

bhavesh_kantilal
Active Contributor
0 Kudos

Sandeep,

If you use the blog by stefan grube , then you can append the user id and password to the URL as,

http://serverurl:httpport/sap/xi/engine?type=entry&version=3.0&Sender.Service=Stefan&Interface=http%...;

Regards

Bhavesh

Former Member
0 Kudos

Cool... I shall try this out.

Thanks a lot,

Sandeep