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.