Я пытаюсь сделать первый простой проект soapUI работать, чтобы запросить действительный сеанс. Я имею в виду пример https://developer.sabre.com/docs/read/soap_basics/getting_started Soap UI.Первый пример SoapUI - Saber
У нас есть свое имя пользователя, пароль, IPCC, и я генерирую диалог диалога, как предлагается в pdf. Я оставляю «DEFAULT» для домена.
Независимо от конечной точки, которую я установил (разработка, cert, prod), я всегда получаю плохую аутентификацию, когда я пытаюсь выполнить первый запрос RequestSessionsRQ.
Возможно, у меня есть некоторые очень простые, но я не могу понять, есть ли у вас какие-либо предложения?
UPDATE:
это запрос SOAP:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<SOAP-ENV:Header>
<eb:MessageHeader SOAP-ENV:mustUnderstand="1" eb:version="1.0">
<eb:From>
<eb:PartyId type="urn:x12.org:IO5:01">WS_Client</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId type="urn:x12.org:IO5:01">WS_Provider</eb:PartyId>
</eb:To>
<eb:CPAId>${#Project#Organization}</eb:CPAId>
<eb:ConversationId>${#Project#ConversationID}_${=System.currentTimeMillis()} </eb:ConversationId>
<eb:Service eb:type="OTA">SessionCreateRQ</eb:Service>
<eb:Action>SessionCreateRQ</eb:Action>
<eb:MessageData>
<eb:MessageId>Waynaut_id_${=System.currentTimeMillis()}</eb:MessageId>
<eb:Timestamp>${=import java.text.SimpleDateFormat ; new SimpleDateFormat("YYYY-MM-dd'T'hh:mm:ss").format(new Date(System.currentTimeMillis() - 0 * 3600 * 1000))}Z</eb:Timestamp>
<eb:TimeToLive>${=import java.text.SimpleDateFormat ; new SimpleDateFormat("YYYY-MM-dd'T'hh:mm:ss").format(new Date(System.currentTimeMillis() -6 * 3600 * 1000))}Z</eb:TimeToLive>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/12/utility">
<wsse:UsernameToken>
<wsse:Username>${#Project#Username}</wsse:Username>
<wsse:Password>${#Project#Password}</wsse:Password>
<Organization>${#Project#Organization}</Organization>
<Domain>DEFAULT</Domain>
</wsse:UsernameToken>
</wsse:Security>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<SessionCreateRQ>
<POS>
<Source PseudoCityCode="${#Project#Organization}"/>
</POS>
</SessionCreateRQ>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
где лексемы как $ {# Project # Организация} подставляются с нашими учетными данными.
и эти конечные точки, которые я пробовал: - https://sws3-sts.cert.sabre.com/ - https://sws3-crt.cert.sabre.com/ - https://webservices3.sabre.com/
Я понятия не имею, что «PartyId» должен быть и оставил значения по умолчанию, приведенные в примере документации.
Это ответ:
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader eb:version="1.0" soap-env:mustUnderstand="1" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader">
<eb:From>
<eb:PartyId eb:type="URI">WS_Provider</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">WS_Client</eb:PartyId>
</eb:To>
<eb:CPAId>P4FF</eb:CPAId>
<eb:ConversationId>TEST-CONVERSATION_1436438834114</eb:ConversationId>
<eb:Service eb:type="OTA">SessionCreateRQ</eb:Service>
<eb:Action>ErrorRS</eb:Action>
<eb:MessageData>
<eb:MessageId>[email protected]</eb:MessageId>
<eb:Timestamp>2015-07-09T10:47:12</eb:Timestamp>
<eb:RefToMessageId>Waynaut_id_1436438834114</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext"/>
</soap-env:Header>
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client.AuthenticationFailed</faultcode>
<faultstring>Authentication failed</faultstring>
<detail>
<StackTrace>com.sabre.universalservices.base.security.AuthenticationException: errors.authentication.USG_AUTHENTICATION_FAILED</StackTrace>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>
спасибо за ответ, это не сработало, хотя :(Я вижу, что в моих запросах есть «PartyId», который выглядит довольно случайным, я использую те, которые указаны в документации, следует ли мне их изменить? –
вы можете поделиться запрос и ответ? – jmacagno
привет, нормально. Я обновил запрос и ответ, исправил все временные метки и попытался использовать все сочетания того, что было предложено здесь, но не повезло :( –