2017-05-16 44 views
0

我正在开发API更新乘客的细节,如姓名和出生日期在PNR中创建PNR来更新旅客姓名。
我跟着这个http://files.developer.sabre.com/doc/providerdoc/pnrservices/UpdateReservationRQ_1_15_0_User_Guide.pdf
请求XML无法在军刀

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:v1="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:v11="http://services.sabre.com/res/or/v1_8"> 
    <soapenv:Header> 
     <sec:Security xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext"> 
     <sec:BinarySecurityToken valueType="String" EncodingType="sec:Base64Binary">${#Project#sessionid}</sec:BinarySecurityToken> 
     </sec:Security> 
     <eb:MessageHeader eb:version="2.0"> 
     <eb:From> 
      <eb:PartyId type="urn:x12.org:IO5:01">999999</eb:PartyId> 
     </eb:From> 
     <eb:To> 
      <eb:PartyId type="urn:x12.org:IO5:01">343434</eb:PartyId> 
     </eb:To> 
     <eb:CPAId>AB</eb:CPAId> 
     <eb:ConversationId>test123</eb:ConversationId> 
     <eb:Service eb:type="OTA">UpdateReservationRQ</eb:Service> 
     <eb:Action>UpdateReservationRQ</eb:Action> 
     <eb:MessageData> 
      <eb:MessageId>1001</eb:MessageId> 
      <eb:Timestamp>2017-01-10T10:00:00</eb:Timestamp> 
      <eb:TimeToLive>2017-01-16T23:59:59</eb:TimeToLive> 
     </eb:MessageData> 
     </eb:MessageHeader> 
    </soapenv:Header> 
    <soapenv:Body> 
    <v1:UpdateReservationRQ Version="1.15.0"> 
    <v1:RequestType>Stateless</v1:RequestType> 
    <v1:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true" /> 
    <v1:ReservationUpdateList> 
     <v1:Locator>${#Project#pnr}</v1:Locator> 
      <v1:ReservationUpdateItem> 
       <!--Optional:--> 
        <v1:PassengerNameUpdate op="U"> 
         <!--Optional:--> 
         <v1:TravelerName type="ADT"> 
         <!--Optional:--> 
         <v1:Given>Ramesh</v1:Given> 
         <v1:Surname>Tiwari</v1:Surname>     
         </v1:TravelerName> 
         <!--Optional:--> 
         <v1:NameAssociationTag> 
          <v1:LastName>Praveen</v1:LastName> 
          <v1:FirstName>Deshmukh</v1:FirstName> 
          <v1:NameRefNumber>01.01</v1:NameRefNumber> 
         </v1:NameAssociationTag> 
        </v1:PassengerNameUpdate> 
        <!--Optional:-->   
      </v1:ReservationUpdateItem> 
     <v1:ReceivedFrom> 
      <v1:AgentName>AESWSSELL1AEBG</v1:AgentName> 
     </v1:ReceivedFrom> 
    </v1:ReservationUpdateList> 
</v1:UpdateReservationRQ> 
</soapenv:Body> 
</soapenv:Envelope> 

但不断收到以下错误。

<soap-env:Body> 
     <stl15:UpdateReservationRS xmlns:stl15="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:ns6="http://services.sabre.com/res/orr/v0" xmlns:raw="http://tds.sabre.com/itinerary" xmlns:or18="http://services.sabre.com/res/or/v1_8" xmlns:ns4="http://webservices.sabre.com/pnrconn/ReaccSearch"> 
     <stl15:Success>FALSE</stl15:Success> 
     <stl15:Warnings> 
      <stl15:Warning> 
       <stl15:Message>PARTIAL ERROR</stl15:Message> 
      </stl15:Warning> 
     </stl15:Warnings> 
     <stl15:Errors> 
      <stl15:Error UpdateId=""> 
       <stl15:Code>500601</stl15:Code> 
       <stl15:Message>UNABLE TO PROCESS</stl15:Message> 
      </stl15:Error> 
     </stl15:Errors> 
     <stl15:Results/> 
     </stl15:UpdateReservationRS> 
    </soap-env:Body> 

请帮我找出请求中的需求变化。

回答

0

有可能在创建PNR更新乘客的细节。 在上述要求中,要求PNR创建日期以竞争此过程。

<stl1:Locator>XPKCGL</stl1:Locator> 
       <stl1:CreateDate>2017-05-23</stl1:CreateDate> 

以下是完整的请求。

<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:ns1="http://webservices.sabre.com/pnrbuilder/getres" xmlns:ns12="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns13="http://www.w3.org/1999/xlink" xmlns:ns14="http://www.w3.org/2000/09/xmldsig#" xmlns:or="http://services.sabre.com/res/or/v1_8" xmlns:ota="http://webservices.sabre.com/sabreXML/2003/07" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:stl1="http://webservices.sabre.com/pnrbuilder/v1_15" xmlns:stl2="http://services.sabre.com/STL/v01" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace"> 
    <SOAP-ENV:Header> 
     <sec:Security xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext"> 
     <sec:BinarySecurityToken valueType="String" EncodingType="sec:Base64Binary">${#Project#sectoken}</sec:BinarySecurityToken> 
     </sec:Security> 
     <MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader" version="1.0"> 
      <eb:From> 
       <eb:PartyId type="urn:x12.org:IO5:01">99935345999</eb:PartyId> 
      </eb:From> 
      <eb:To> 
       <eb:PartyId type="urn:x12.org:IO5:01">344535</eb:PartyId> 
      </eb:To> 
      <eb:CPAId>AB</eb:CPAId> 
      <eb:ConversationId>cpm23432</eb:ConversationId> 
      <eb:Service type="OTA">UpdateReservationOperation</eb:Service> 
      <eb:Action>UpdateReservationRQ</eb:Action> 
      <eb:MessageData> 
       <eb:MessageId>608926</eb:MessageId> 
       <eb:Timestamp>2017-05-22T15:49:07Z</eb:Timestamp> 
      </eb:MessageData> 
     </MessageHeader> 
    </SOAP-ENV:Header> 
    <SOAP-ENV:Body> 
     <stl1:UpdateReservationRQ xmlns="http://webservices.sabre.com/pnrbuilder/v1_15" Version="1.15.0"> 
      <stl1:RequestType>Stateless</stl1:RequestType> 
      <stl1:ReturnOptions IncludeUpdateDetails="true" RetrievePNR="true" /> 
      <stl1:ReservationUpdateList> 
       <stl1:Locator>XPKCGL</stl1:Locator> 
       <stl1:CreateDate>2017-05-23</stl1:CreateDate> 
       <stl1:ReservationUpdateItem UpdateId="ID-1"> 
        <stl1:PassengerNameUpdate op="U"> 
         <stl1:TravelerName type="ADT" referenceId="1"> 
          <stl1:Given>RamRaj</stl1:Given> 
          <stl1:Surname>Des</stl1:Surname> 
         </stl1:TravelerName> 
         <stl1:NameAssociationTag> 
          <stl1:LastName>DESHMUKH</stl1:LastName> 
          <stl1:FirstName>PRAVEEN</stl1:FirstName> 
          <stl1:NameRefNumber>01.01</stl1:NameRefNumber> 
         </stl1:NameAssociationTag> 
        </stl1:PassengerNameUpdate> 
       </stl1:ReservationUpdateItem> 
       <stl1:ReceivedFrom> 
        <stl1:AgentName>CPM MBE</stl1:AgentName> 
       </stl1:ReceivedFrom> 
      </stl1:ReservationUpdateList> 
     </stl1:UpdateReservationRQ> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 
0

很难说没有了解载体,但许多航空公司将不会允许变更名称一旦PNR已经“结束”,并定位器已经归还。