AnsweredAssumed Answered

AFX - SOAP Web Service - Status Code

Question asked by David Bauwens on Sep 20, 2016
Latest reply on Feb 28, 2018 by Muzammil K

Hello,

 

When configuring a capability of the SOAP web service connector, to catch the "status code" of the response, you've the possiblity to choose between the "status code" which is the HTTP status, a XPath or Regex.

 

It works correctly if I let the default option "Status code" but I'm trying to get the status from the envelope response to know if the request was successfully executed (the http status is always 200).

 

This the response received (from the connector logs):

 

SOAP invokation successful, envelope response is <?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<soap:Header/>
<soap:Body>
<setRoleResponse
xmlns="https://sbela00472.be.extranet/roleFunctions">
<status
xsi:type="xsd:int">0</status>
<error xsi:type="xsd:string">missing role template:xxxxxxx</error>
</setRoleResponse>
</soap:Body>
</soap:Envelope>

 

I tried with the XPath option (/Envelope/Body/setRoleResponse/status)
I tried with several Regex filters
Both with different patterns and replacements ..

But it always ends with a 'Failure - Error processing SOAP web service response'. 


Any idea how I can handle this correctly ? Did someone already tried ?
<status xsi:type="xsd:int">0</status>
0 = nok
1 = OK


I found a few documents or workshops in the knowledge base but they are all using the default option "status code"

Thanks in advance,
Rgds

Outcomes