cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Sender validation error text

former_member198060
Participant

Dear all,

I am using SOAP sender scenarios on a process orchestration 7.4 with the latest SP. I have xsd validation activated in the iFlow. Now I remember that a long time ago (I think somewhere around PI 7.11) we got back meaningful XML parser errors in the response message from PI, so that a web service consumer could easily analyze what went wrong and correct the sent XML.

But since update to 7.3 (I think) all we get back in case of synchronous validation errors is:

<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP:Body>
      <SOAP:Fault>
         <faultcode>SOAP:Server</faultcode>
         <faultstring>Server Error</faultstring>
         <detail>
            <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
               <context>XIAdapter</context>
               <code>ADAPTER.JAVA_EXCEPTION</code>
               <text>See log trace with id: n/a</text>
            </s:SystemError>
         </detail>
      </SOAP:Fault>
   </SOAP:Body>
</SOAP:Envelope>

You can see the <text> information is absolute meaningless, not even pointing to a logID anymore.

So my question is: Is there a way to get back meaningful validation errors of the parser in the text field? It was like that before, so maybe there is a way to achieve this in customizing or with some hidden adapter module setting?

Accepted Solutions (1)

Accepted Solutions (1)

former_member190293
Active Contributor

Hi Peter!

Please refer to SAP note:

2293430 - Processing error response at sender SOAP adapter

Symptom

When a third party application is sending a synchronous SOAP request, it expects a proper error response(if something fails in the message processing like, XML Validation) to understand the root cause. But with the recent changes in SOAP sender adapter(while writing SOAP fault message), the complete error information has been masked. Due to this, the 3rd party applications will not receive any error information instead, we are requesting to see the error log (in NWA traces) for the error information.

Solution

Code changes have been made in the sender side processing of SOAP adapter to consider only the root cause of the error while sending the error response back. For this, you have to configure a module parameter "XMBWS.AllowErrorResponse" with value "true" (both without quotes) under the SOAP adapter module i.e., XISOAPAdapterBean.

By default, the value is set to false and SOAP sender adapter will not send any kind of information to the sender system.

To get this correction available in your Support package you need to apply the patch matching to your support package version as per the instructions in the NetWeaver Support Package Stack guide which can be found on the SAP Service Marketplace as described in SAP Note 952402.

Regards, Evgeniy.

Answers (1)

Answers (1)

former_member198060
Participant

Thank you very much Evgeniy, this helped a lot!

Is there a central place where we can see per adapter all those scattered module parameters? It seems there are a lot of these XMBWS parameters in the SOAP adapter for example. But I would not know where they are coming from or where I would look them up centrally.

former_member190293
Active Contributor

Neither would I, Peter! From time to time I find one or another parameter either in SAP notes or in discussions and blogs. I've never seen any document with standard parameters list for each type of adapter.

Regards, Evgeniy.

JaySchwendemann
Active Contributor
0 Kudos

I second that. That would help sooo much.