Я использую сторонний веб-сервис с использованием заглушки AXIS2. Основной метод, который я использую отлично работает и имеет под подпись:Извлечь куки из ответа SOAP с помощью AXIS2
boolean isValidUser(username, password);
вебсервис должна возвращать строку (маркер) в заголовках ответа, как печенье: - WSToken
Но я не могу найти какой-либо метод для извлечения заголовков и файлов cookie из ответа. На самом деле нет объекта HTTPResponse для извлечения файлов cookie!.
Я попробовал этот код:
MessageContext context = stub._getServiceClient().getLastOperationContext().getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);
Object response = context.getProperty("response");
Но она возвращает нулевое значение, поскольку нет такого свойства в контексте. Контекст имеет ниже свойства:
transport.http.statusCode
CHARACTER_SET_ENCODING
TRANSPORT_HEADERS
org.apache.axiom.om.util.DetachableInputStream
messageType
ContentType
TRANSPORT_IN
Как я могу получить печенье под названием «WSToken» из ответа с помощью заглушки?
Может быть, вы должны использовать обработчики оси для визуализации всего содержимого мыла, чтобы получить токен. – Riadh
Вы отлаживали ответ с чем-то вроде curl или soap-ui, так что вы действительно уверены, что необходимый заголовок присутствует? –