Error in Amadeus Service: A header representing a Message Addressing Property is not valid and the message cannot be processed

Mansinh picture Mansinh · Jul 19, 2014 · Viewed 7.9k times · Source

While trying to invoking my Amadeus Fare_masterpricetravelboard Service using SoapUI like mozila poster, Google restclient app, or my .net code, it returns the following error message:

A header representing a Message Addressing Property is not valid and the message cannot be processed

The same webservice is working fine in SOAP UI Tool.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sec="http://xml.amadeus.com/2010/06/Security_v1" xmlns:typ="http://xml.amadeus.com/2010/06/Types_v1" xmlns:iat="http://www.iata.org/IATA/2007/00/IATA2010.1" xmlns:app="http://xml.amadeus.com/2010/06/AppMdw_CommonTypes_v3" xmlns:link="http://wsdl.amadeus.com/2010/06/ws/Link_v1" xmlns:ses="http://xml.amadeus.com/2010/06/Session_v3" xmlns:fmp="http://xml.amadeus.com/FMPTBQ_10_3_1A">
  <soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
    <add:MessageID xmlns:add="http://www.w3.org/2005/08/addressing">65449120-2aa0-46b0-9dcc-c40c6439836c</add:MessageID>
    <wsa:Action>http://webservices.amadeus.com/FMPTBQ_10_3_1A</wsa:Action>
    <add:To xmlns:add="http://www.w3.org/2005/08/addressing">https://nodeD1.test.webservices.amadeus.com/1ASIWIBEWWZ</add:To>
    <link:TransactionFlowLink xmlns:link="http://wsdl.amadeus.com/2010/06/ws/Link_v1" />
    <oas:Security xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
      <oas:UsernameToken oas1:Id="UsernameToken-1" xmlns:oas1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <oas:Username>WSWWZIBE</oas:Username>
        <oas:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">EoCeDbDbThB=</oas:Nonce>
        <oas:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">Hr2HRG8j0dTH19kh52wQ5aqMxhU=</oas:Password>
        <oas1:Created>2014-07-19T12:33:47:530Z</oas1:Created>
      </oas:UsernameToken>
    </oas:Security>
    <AMA_SecurityHostedUser xmlns="http://xml.amadeus.com/2010/06/Security_v1">
      <UserID POS_Type="1" PseudoCityCode="THRI4213V" RequestorType="U" />
    </AMA_SecurityHostedUser>
  </soapenv:Header>
  <soapenv:Body>
    <Fare_MasterPricerTravelBoardSearch>
      <numberOfUnit>
        <unitNumberDetail>
          <numberOfUnits>1</numberOfUnits>
          <typeOfUnit>PX</typeOfUnit>
        </unitNumberDetail>
        <unitNumberDetail>
          <numberOfUnits>250</numberOfUnits>
          <typeOfUnit>RC</typeOfUnit>
        </unitNumberDetail>
      </numberOfUnit>
      <paxReference>
        <ptc>ADT</ptc>
        <traveller>
          <ref>1</ref>
        </traveller>
      </paxReference>
      <fareOptions>
        <pricingTickInfo>
          <pricingTicketing>
            <priceType>RP</priceType>
            <priceType>RU</priceType>
            <priceType>TAC</priceType>
          </pricingTicketing>
        </pricingTickInfo>
      </fareOptions>
      <itinerary>
        <requestedSegmentRef>
          <segRef>1</segRef>
        </requestedSegmentRef>
        <departureLocalization>
          <departurePoint>
            <locationId>CDG</locationId>
          </departurePoint>
        </departureLocalization>
        <arrivalLocalization>
          <arrivalPointDetails>
            <locationId>LHR</locationId>
          </arrivalPointDetails>
        </arrivalLocalization>
        <timeDetails>
          <firstDateTimeDetail>
            <timeQualifier>TA</timeQualifier>
            <date>041114</date>
            <time>2200</time>
            <timeWindow>4</timeWindow>
          </firstDateTimeDetail>
          <rangeOfDate>
            <rangeQualifier>C</rangeQualifier>
            <dayInterval>1</dayInterval>
          </rangeOfDate>
        </timeDetails>
      </itinerary>
    </Fare_MasterPricerTravelBoardSearch>
  </soapenv:Body>
</soapenv:Envelope>

Response:

<soap:Envelope>
 <soap:Header>
<wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action>
<wsa:MessageID>urn:uuid:0ce4ebc0-7753-6394-4945-c7e8f81c2c49</wsa:MessageID>
<wsa:RelatesTo RelationshipType="http://www.w3.org/2005/08/addressing/reply">65449120-2aa0-46b0-9dcc-c40c6439836c</wsa:RelatesTo>
 <wsa:FaultDetail>
<wsa:ProblemHeaderQName>wsa:To</wsa:ProblemHeaderQName>
<wsa:ProblemIRI>https://nodeD1.test.webservices.amadeus.com/1ASIWIBEWWZ</wsa:ProblemIRI>
 </wsa:FaultDetail>
 </soap:Header>
<soap:Body>
 <soap:Fault>
<faultcode>wsa:InvalidAddressingHeader</faultcode>
<faultstring>A header representing a Message Addressing Property is not valid and the message cannot be processed</faultstring>
<faultactor>SI:muxDZ1</faultactor>
 </soap:Fault>
</soap:Body>
 </soap:Envelope>

Answer

Antonio picture Antonio · Jul 24, 2014

Be sure that the url of the web request matches the value of the tag "add:To", including letter case.

Probably you are developing in .net and, even if you set the url in the same letter case, the request will be sent to the address in lowercase. So nodeD1 become noded1 in http layer but remains nodeD1 in soap envelope. Be careful to use lowercase or uppercase in both fields