Connect-SOAP - connectivity test failure
SummaryCalling a PRPC SOAP CONNECTOR with specific arguments fails; other arguments do not.
User has extracted out the SOAP Envelope Response returned from the failed call, but it is not known why the XML data is causing an issue.
Error MessagesOn User Portal: user sees '** SOAP Service Failed'.
On checking the Clipboard we see the following error strings on our Temporary Page:pyStatusMessage: com.pega.pegarules.pub.services.RemoteApplicationException: SOAP service failed.
pyStatusValue: Fail: Internal Reason.
User is able to see the 'SOAP Service Failed' message in the PegaRules.log; and is able to extract out the incoming SOAP Envelope message from there also.
Initially - it was suspect that the content of the XML was malformed; or that the related PRPC Parse-XML file was failing for some reason.
However, when the Parse-XML is run directly from the Designer Studio, using the XML payload (after removing the outer 'SOAP:Envelope' wrapper) from the error; this was shown not to the case.
The Parse-XML is able to map the data correctly to PRPC Properties.
Steps to Reproduce
- Call the SOAP Connector with (application-specific) with a particular parameter, note that this fails.
- Contrast with other working SOAP calls for different Parameters.
Root CauseA third-party product issue : the endpoint in question was seen to be returning a "HTTP 500" error - despite delivering the SOAP Envelope and correct XML payload.
This HTTP 500 was identified by using SOAPUI and replaying the same type of SOAP request as being made by PRPC.
The *only* case where the HTTP 500 + Payload was seen was the case which fails in PRPC also; for all other requests, the correct HTTP 200 response was provided by the endpoint.
ResolutionHere’s the explanation for the reported behavior: HTTP 500 is an error; and the SOAP CONNECTOR reacts to this by failing the SOAP call; this is correct and expected behavior. (The confusing thing here was that the actual response included the correct data).
The issue means there is an issue with the endpoint which needs correcting; rather than anything wrong with the PRPC CONNECTOR.
Published March 17, 2017 - Updated March 22, 2017