on 12-29-2010 9:38 AM
Greetings All,
In my scenario i am calling external service of SFDC using receiver soap adapter but i am facing below error in the response.
ADAPTER.HTTP_EXCEPTION, HTTP 500 Internal Server Error
I am creating the soap structure/envelope using Java mapping since need to add additional parameter in soap header.
I am setting the URL in java UDF using parameter TServerLocation.
In comm channel checked "do not use soap envlope" also set the format to text/xml using MessageTransformBean.
The service was working fine when tested in SoapUI tool.
Looking forword for your help and will be appreciated.
Thanks,
Sandip
It may also be a need to provide 'nosoap=true' property in URL.
-
Srikanth Srinivasan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Sandip, I hope you are doing fine!
I`m not sure if you are using a sync or async scenario...
The behavior that you describe is the expected behavior for SOAP receiver adapter in nosoap mode, asynchronous case.
The explanation that lies behind it is that in nosoap mode the bahavior is just similar to pure HTTP communication. An HTTP 4/5 error received from the target server is treated as HTTP internal error and logged into AFW as an error. The message in an asynchronous scenario without acknowledgements is normally seen as successful on IE side as it is successfully sent to the target system. It can be even successfully consumed by the target webservice, but for amo other reason, the HTTP request from SAP PI to the target system returns HTTP 500 error.
If you ask for system delivery acknowledgements, you should get a non-successful delivery acknowledgement.
In synchrnous scenarios, when a response is expected, the behavior is different.
If this is a sync scenario, there is an official patch released on the service marketplace. SAP Note 1533195 is released.
In addition to deploying the patch, apply the additional configuration steps. As per this note, for the default module
sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean
you will need to set:
Module Key = soap
Parameter Name = noSOAPMakeSysErrFromResponseFault
Parameter Value = false
If you need to bypass the HTTP errors in the communication with the target system, you need to apply note 1055678.
To apply it, just add for the default module
sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean in your receiver
channel, Modules tab the following:
Module Key = soap
Parameter Name = XMBWS.NoSOAPIgnoreStatusCode
Parameter Value = false
If you need any SOAP fault related behavior or any other SOAP related feature, you should setup the channel to run normal SOAP mode, since as already mentioned nosoap mode is used now.
In addition, check note:
856597 - FAQ: XI 3.0 / PI 7.0 / PI 7.1 SOAP Adapter
section "1. Sender Connection"
"
Q: I get a server error "500 Internal Servler Error" from the
adapter's servlet. What went wrong?
"
and get the trace to give you more details of the error.
One more thing, VERY IMPORTANT.
I STRONLGY recommend you to update all XI-PI components to latest patch available in the Service Marketplace. Thery are:
XITOOLS, XIESR, XIAF, XIAFC, MESSAGING, XIGUI. Some of them might not be present depending on the release of you system. e.g: 3.0, 7.0, 7.1
I hope this helps you.
Cheers
Jorge Eidelwein
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Jorge,
I have exactly same scenario.
PROXY to SOAP webservice:
We found that the request is successfully hitting the webservice. We confirmed from the thirdparty. And they said that they are also sending a proper response. However the response message is failing in MONI with 500 internal Server error. Also there is no payload.
We implemented the note mentioned above. It did not work.
Applied the below parameter in the module configuration tab to allow the adapter engine pass the error..
XMBWS.NoSOAPIgnoreStatusCode -- true
Now it is successfull in the adapter engine but failing inthe Integration Engine with the same error.
Nothing is coming into PI. There is no payload. In moni as well as in the RWB.
I am using the WSDL given by the third party guys for my response mapping.
Please guide me on how to capture the payload.
Hi Sandip,
If this channel is working with SoapUI tool then this problem could be at receiver webserver hosting the webservice.
You may contact the receiver system for checking out if they have problem at their end.
Also, have a look at SAP Notes: 804124, 807000
-Rahul
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
98 | |
11 | |
11 | |
10 | |
10 | |
8 | |
6 | |
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.