We are integrating our application with a partner who is connecting to a SOAP endpoint we are exposing. Using SOAP is required by the partner, and we are trying to match their specification. Even once I had everything configured correctly, the parameters were all null.

I was able to determine it was because their XML Namespace on the call was set to the default from Microsoft "https://tempuri.org"

<Process xmlns="https://tempuri.org">

Once I switched it to "https://www.outsystems.com" in my API tester the request worked correctly.

<Process xmlns="https://www.outsystems.com"> 

However, I am not sure if this partner is able to change this on their side (they've been inflexible with changes) so I was wondering if there was something I could do on my end to ignore the XML namespace and have it work with the tempuri.org xmlns.

Thanks!

Solution

Hi Jordan,

If you select your espace, and go to its property pane, way down you have an Advanced section where there's a "Web Service Namespace" property.

You should be able to set this to the namespace you want.

Solution

Ricardo Silva wrote:

Hi Jordan,

If you select your espace, and go to its property pane, way down you have an Advanced section where there's a "Web Service Namespace" property.

You should be able to set this to the namespace you want.

Thank you so much Ricardo! This is a life saver! 


Hello, 


i am having the same issue, but xmlns:urn="urn:somewebsite.come:COMMON:ReturnMessage" this is not the real website name. I added it to the "Web Services Namespace" property but it is not working. it is giving below message:

<faultcode>soap:Client</faultcode>
         <faultstring>Server did not recognize the value of HTTP Header SOAPAction: http://myAppName/myModuleName/SI_ReturnMessage_Out_Async.</faultstring>


it only works with Outsystems namespace (this is the default value generated in the wsdl xmlns:out="http://www.outsystems.com")


any advice ?