Action for ultimate recipient is required but not present in the message. Response message from web service call.

0
Hi, I have been trying to get a response from a web service call. But it gives me back the folowing message: Microsoft.Web.Services3.Security.SecurityFault: Header http://schemas.xmlsoap.org/ws/2004/08/addressing:Action for ultimate recipient is required but not present in the message. I coppied the sending message from the Mendix console to SoapUI and tried making a call. This seems to work. The main difference is that I enable the WS-A adressing in SoapUI. When I disable WS-A adressing I get the same message as above in SoapUI. The documentation says that WS-Addressing 1.0 is supported from Mendix version 8.16, I am using 8.18 at the moment. Is it posible that WS-A adressing is disabled within Mendix? Or is it something else? Below you can find the message’s i’m trying to send with the HTTP headers from both Mendix and SoapUI. If you need more information to help me, please feel free to ask. xml message: <?xml version='1.0' encoding='utf-8'?> <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <wsse:Security xmlns:cir="http://www.rechtspraak.nl/namespaces/cir01" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken> <wsse:Username>[USERNAME]</wsse:Username> <wsse:Password>[PASSWORD]</wsse:Password> </wsse:UsernameToken> </wsse:Security> </soapenv:Header> <soapenv:Body> <ns1:searchByDate xmlns:ns1="http://www.rechtspraak.nl/namespaces/cir01"> <ns1:date>2021-05-13T13:21:25.825Z</ns1:date> <ns1:court>40</ns1:court> </ns1:searchByDate> </soapenv:Body> </soapenv:Envelope> HTTP Header Mendix: Request content for POST request to https://webservice.rechtspraak.nl/cir.asmx HTTP/1.1 Accept: application/soap+xml, multipart/related Content-Type: application/soap+xml; charset=UTF-8; action="http://www.rechtspraak.nl/namespaces/cir01" HTTP Header SoapUI: POST https://webservice.rechtspraak.nl/cir.asmx HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: application/soap+xml;charset=UTF-8;action="http://www.rechtspraak.nl/namespaces/cir01" Content-Length: 1034 Host: webservice.rechtspraak.nl Connection: Keep-Alive User-Agent: Apache-HttpClient/4.5.5 (Java/12.0.1) EDIT 1: Custom header with wsa headers: <Header xmlns:cir="http://www.rechtspraak.nl/namespaces/cir01" xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken> <wsse:Username>[USERNAME]</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">[PASSWORD]</wsse:Password> </wsse:UsernameToken> </wsse:Security> <wsa:Action wsu:Id="Id-aae4134e-e927-4077-828b-d09648a41d76" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://www.rechtspraak.nl/namespaces/cir01/CIRSoap/searchByDateRequest</wsa:Action> <wsa:MessageID wsu:Id="Id-08baf284-dfea-45b3-b680-cd44b7db569f" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">urn:uuid:9822d47c-81a4-4842-a4c1-2d462b602a37</wsa:MessageID> <wsa:ReplyTo wsu:Id="Id-ad444a9e-bca4-4473-bce1-dd5d99e5cf08" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"> <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address> </wsa:ReplyTo> <wsa:To wsu:Id="Id-975955d7-feb0-4983-aab9-e40dd4430024" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">https://webservice.rechtspraak.nl/cir.asmx</wsa:To> </Header>  
asked
2 answers
1

According to this: https://social.msdn.microsoft.com/forums/en-US/87f206af-c870-4737-acc2-4b6936fecef1/action-for-ultimate-recipient-is-required-but-not-present-in-the-message you need to add custom headers in your webservice call.

Regards,

Ronald

 

 

answered
0

I found the answer.
I was using a “Call Web Service” activity. When I used a Call REST Service en posted the xml in the custom request template I got the right response.

For those who are wondering below is the working request with the wsa headers:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:cir="http://www.rechtspraak.nl/namespaces/cir01">

<soap:Header xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
<wsse:Security xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken>
    <wsse:Username>[USERNAME}</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">[PASSWORD]</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>

<wsa:Action>http://www.rechtspraak.nl/namespaces/cir01/CIRSoap/searchByDateRequest</wsa:Action><wsa:To>https://webservice.rechtspraak.nl/cir.asmx</wsa:To>

</soap:Header>
   <soap:Body>
      <cir:searchByDate>
         <cir:date>2021-05-12</cir:date>
         <!--Optional:-->
         <cir:court>40</cir:court>
         <!--Optional:-->
         <cir:pubType>
            <!--Zero or more repetitions:-->
            <cir:string/>
         </cir:pubType>
      </cir:searchByDate>
   </soap:Body>
</soap:Envelope>

 

answered