Asynchronous call using a SOAP ADAPTER
RE: RFC to SOAP - asynchronous call
I have used SOAP adapter and need some help.
Please expalin the following terminology:
Secondly, I would like to build an asynchronous process RFC to SOAP. If the webservice has been written as a synchronous call i.e. they will send a response back. Is it possible to ignore this repsonse, what is the impact?
I guess you want the general explanations for the terminologies and not with respect to any particular scenario. I will do my best to help you with this.
URL: Uniform Resource Locator (was earlier called Universal Resource Locator)
A URL is a unique address to a (digital) resource. The digital resource may be anything like a file, a webpage, an image, an email. The URL is similar to the postal address that you have. Anyone wanting to reach you can do so using your postal address. Another example is the telephone number. Anyone from anywhere across the world can communicate with you using a unique combination of your telephone number with your international dialling code.
Similarly, a URL is a unique address. Let us consider a website SDN. The URL to this is http://www.sdn.sap.com where the first part is the protocol to use for communication (similar to the method of post or telephone) In this case it is http. The rest of the URL gives the location of the resource. Here www.sdn.sap.com is the website. Similarly the address can contain the location of an image or file.
A web service is in very simple terms, an application that resides on any machine, but is exposed outside through the internet for anyone to use. A very crude example could be gmail. The mail server resides on google's application servers and executes everything from there. But we as users have a log in to this, and through the internet, we can use the features of this application as a web service. Generic SAP applications are not web services as you have to install the application on your local server to use it. Whereas the new gen products like Business By Design uses web services. So the servers are hosted in SAP permisis and the customers can log in to these using the exposed web services.
WSDL: Web Services Description Language (or Web Service Definition Language)
This is an XML-based language that is used to describe any Web Service. An application that is exposed as a web service can be written in any language and on any platform. But to expose over the internet, it has to follow certain rules and protocols, which are so generic that everyone can access this web service using this standard protocols. For example, the language English is the common language used on this forum. A user from Germany, Spain, or Russia all communicate in English, using the rules of English, so that he is able to put his/her point across and is able to get the information in the same language.
WSDL is the language, in which the application that has to be exposed as a web service, is written. It is written in a standard XML-based format that has been decided and is published by the World Wide Web Consortium - they do these kind of things
Regarding the second question, a response from a synchronous call can be ignored. The problem only arises if you expect further processing to be done based on the value of this incoming response. Of course, you have to receive the response else you will get a runtime error. What you do with this response then, is entirely left to you. I hope you understand what I am saying. You have to define types and mappings to receive the response, but you dont need to process it.