on 2010 Dec 24 7:45 AM
Hi,
I am working on a scenario, where the sender is sending a HTTP request with SOAP envelope.
I have configured the SOAP adapter for this. And my service interface is setup as ASYNCHRONUS.
However the sender want a standrad HTTP respone in return for the request.
My guess is making the Service Interface as SYNCHRONUS would not resolve the issue.
I think this can be done though BPM.
Is this possible without BPM?? But in our landscape we do not follow BPM.
So is there any way to do this?
Thanks
Sanjaya
Request clarification before answering.
Hi Kumar,
its better to suggest to configure soap sender sync and at the proxy end you can code for a response message(structure can be one status field or some text description stating process is successful/failed etc) to be triggers once request message reaches ECC system.
you can do it in BPM ,but as you said if BPM is not used in your landscape then go for sync soap -proxy,latter this can help in the tracking the messages also as sap passes the error info to PI/ sender system even if error in SAP side.
Regards,
Srinivas
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
However the sender want a standrad HTTP respone in return for the request.
I think we get 200 OK response code....is the sender expecting something else?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
We had the similar situation in our project. We did SOAP TO proxy scenario. Though business wise this interface is asynchronous, we made it as synchronous.
In the application side i.e in our proxy side if the transaction is successful we send the request as succesful transaction message as the response to the sender. if the transaction is not successful due to business validation against data, we catch exception and send back error message as response to the sender too.
My client sending request to SAP via soap sender and we pass it to sap via pi and at the sap level proxy side we take care the business processing for both successful and unsuccessful. If the sender wants acknowledgement for the request, create synchronous interface by sending the response to the client.
Hope this helps
Will they automatically they get a resonse code of 200 if the request reaches XI in case of the asynchronus scenario?
yes...remember that http 200 OK is an indication that the message was passed to XI/ PI.....it is not an indication that the message is successfully processed by XI/ PI
http://help.sap.com/saphelp_nw04/helpdata/en/5e/164442c1a1c353e10000000a1550b0/content.htm
from above help section:
If the SOAP client then receives an empty SOAP message in HTTP 200 as a response, this means that the message has been
successfully persisted and will be processed exactly once.
Regards,
Abhishek.
Hi,
Ask the SOAP application team to catch the exception in try catch block if using .net application and inside this try catch block ask them to invoke the proxy object method to send SOAP req msg to ur XI system.........then if there is any error occuring, it will be in the exception object which can be used later in the .net code of ur sender SOAP application............
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
77 | |
30 | |
10 | |
8 | |
8 | |
7 | |
7 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.