api.soap Формирование запросов к SOAP сервисам
-
api.soap.addAttachment(soapMessage, contentId, mimeType, is)
Добавление вложения к SOAP-сообщению.
Параметры метода:
- soapMessage — SOAP-сообщение. SOAPMessage;
- contentId — имя вложения. String;
- mimeType — тип вложения. String;
- is — контент вложения в виде InputStream
Возвращает SOAP-сообщение с вложением.
-
api.soap.addWsSecurityHeader(soapMessage, login, password)
Добавление заголовка wsse:Security к SOAP-сообщению.
Параметры метода:
- soapMessage — SOAP-сообщение. SOAPMessage;
- login — логин. String;
- password — пароль. String.
Возвращает SOAP-сообщение с заголовком.
-
api.soap.buildSoapMessage(is)
Создание SOAP-сообщения (1).
Параметр метода:
- is — содержимое SOAP-сообщения в виде InputStream.
Возвращает SOAP-сообщение.
Пример:
import java.nio.charset.StandardCharsets def soapMessageBody = '''...''' def soapMessage = api.soap.buildSoapMessage(new ByteArrayInputStream(soapMessageBody.getBytes(StandardCharsets.UTF_8))) api.soap.sendRequest('someUrl', soapMessage)
-
api.soap.buildSoapMessage(soapMessage)
Создание SOAP-сообщения (2).
Параметр метода:
- soapMessage — содержимое SOAP-сообщения. String.
Возвращает SOAP-сообщение.
Пример:
def soapMessageBody = '''...''' def soapMessage = api.soap.buildSoapMessage(soapMessageBody) api.soap.sendRequest('someUrl', soapMessage)
-
api.soap.getAttachment(soapMessage, contentId)
Получение содержимого вложения из SOAP-сообщения по его идентификатору.
Параметры метода:
- soapMessage — SOAP-сообщение. SOAPMessage;
- contentId — идентификатор вложения. String.
Возвращает содержимое вложения в виде InputStream.
-
api.soap.getSOAPMessageAsInputStream(soapMessage)
Преобразование SOAP-сообщение в InputStream.
Параметры метода:
- soapMessage — SOAP-сообщение. SOAPMessage.
Возвращает SOAP-сообщение в виде InputStream.
-
api.soap.getSOAPMessageAsString(soapMessage)
Преобразование SOAP-сообщение в строку.
Параметр метода:
- soapMessage — SOAP-сообщение. SOAPMessage.
Возвращает SOAP-сообщение в виде строки.
-
api.soap.sendRequest(url, is)
api.soap.sendRequest(url, is, timeout)
Выполнение SOAP запроса (1).
Параметры метода:
- url — ссылка на WSDL сервер. String;
- is — содержимое SOAP-сообщения в виде InputStream;
- timeout — таймаут в секундах, после которого выполнение soap-запроса будет принудительно прервано. Long.
Возвращает ответ на запрос в виде InputStream.
Пример: Выполнить SOAP запрос к сервису http://example.com/soap.wsdl с использованием содержимого строки string в качестве тела запроса:
def url = 'http://example.com/soap.wsdl' def is = new ByteArrayInputStream(string.getBytes()); api.soap.sendRequest(url, is)
-
api.soap.sendRequest(url, message)
api.soap.sendRequest(url, message, timeout)
Выполнение SOAP запроса (2).
Параметры метода:
- url — ссылка на WSDL сервера. String;
- message — SOAP-запрос. SOAPMessage;
- timeout — таймаут в секундах, после которого выполнение soap-запроса будет принудительно прервано (long)
Возвращает ответ на запрос.
-
api.soap.sendRequest(url, message, canThrows)
api.soap.sendRequest(url, message, canThrows, timeout)
Выполнение SOAP запроса (3).
Параметры метода:
- url — ссылка на WSDL сервера. String;
- message — SOAP-запрос. SOAPMessage;
- canThrows — указывает, можно ли бросать исключения при получении SOAPFault. Boolean;
- timeout — таймаут в секундах, после которого выполнение soap-запроса будет принудительно прервано. Long
Возвращает ответ на запрос.
Если canThrows == true и получен SOAPFault, то будет выброшено исключение {@link FxExcepton} с содержимым fault.