To Get a SOAP Header

In this procedure, you retrieve a SOAP header from the request. In the SoapUI, the request window shows the soap Envelope header.

OrderTshirt request in XML format.
  1. In the SoapUI, modify the OrderTshirt request by entering a value for the API key. For example, enter 987654321 between the <apiKey> tags.

  2. In Studio, edit the DataWeave code to get the API key, which is an inbound property, from the header:

    %dw 1.0
    %output application/xml
    %namespace ns0 http://mulesoft.org/tshirt-service
      ns0#OrderTshirtResponse: {
        orderId: "I got a request from "
        ++ payload.ns0#OrderTshirt.name
        ++ ", using the following auth header "
        ++ inboundProperties['soap.AuthenticationHeader'].ns0#AuthenticationHeader.apiKey
  3. Save and rerun the project.

  4. In SoapUI, send a request, and check that the response changes to the following:

    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
          <ns0:OrderTshirtResponse xmlns:ns0="http://mulesoft.org/tshirt-service">
             <orderId>I got a request from John, using the following auth header 987654321</orderId>

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub