T.M. SoftStudio

feci quod potui, faciant meliora potentes

JAX-WS API

Пакеты javax.xml.ws.http и javax.xml.ws.soap

Пакет javax.xml.ws.http содержит исключение HTTPException и интерфейс HTTPBinding с полем HTTP_BINDING, представляющим XML/HTTP-связывание. Константа HTTP_BINDING используется аннотацией @BindingType, а также методами Service.addPort() и Endpoint.create(). Интерфейс HTTPBinding также наследует методы getBindingID(), getHandlerChain(), setHandlerChain() от интерфейса javax.xml.ws.Binding, который он расширяет. Объект Binding может быть получен методом getBinding() интерфейса javax.xml.ws.BindingProvider, который реализуют объекты Proxy и Dispatch на стороне клиента, а также методом Endpoint.getBinding().

Пакет javax.xml.ws.soap содержит интерфейс SOAPBinding, классы AddressingFeature и MTOMFeature, перечисление AddressingFeature.Responses, аннотации @Addressing и @MTOM, исключение SOAPFaultException.

Интерфейс SOAPBinding расширяет интерфейс javax.xml.ws.Binding и имеет константы SOAP11HTTP_BINDING, SOAP12HTTP_BINDING, SOAP11HTTP_MTOM_BINDING и SOAP12HTTP_MTOM_BINDING, используемые аннотацией @BindingType, а также методами Service.addPort() и Endpoint.create(). Интерфейс SOAPBinding дополнительно имеет, помимо методов getBindingID(), getHandlerChain(), setHandlerChain(), наследуемых от интерфейса javax.xml.ws.Binding, перечисленные далее методы.

  • java.util.Set<java.lang.String> getRoles()

void setRoles(java.util.Set<java.lang.String> roles)

Возвращает и устанавливает роли для получателя SOAP-сообщений (например, http://www.w3.org/2003/05/soap-envelope/role/next).

  • boolean isMTOMEnabled()

void setMTOMEnabled(boolean flag)

Возвращает и устанавливает использование MTOM.

  • javax.xml.soap.SOAPFactory getSOAPFactory()

Возвращает SAAJ-объект SOAPFactory, используемый для создания элементов SOAP-сообщений.

  • javax.xml.soap.MessageFactory getMessageFactory()

Возвращает SAAJ-объект MessageFactory, используемый для создания SOAP-сообщений.

Классы AddressingFeature, MTOMFeature и аннотации @Addressing, @MTOM, также как и класс javax.xml.ws.RespectBindingFeature и аннотация @RespectBinding, позволяют устанавливать свойства JAX-WS-реализации. Классы AddressingFeature, MTOMFeature и RespectBindingFeature расширяют класс javax.xml.ws.WebServiceFeature, объекты которого используются методами Service.getPort, Service.createDispatch, Endpoint.create и Endpoint.publish. Аннотации @Addressing, @MTOM и @RespectBinding могут использоваться вместе с аннотациями @WebService, @WebServiceProvider и @WebServiceRef.

Класс AddressingFeature определяет использование спецификации WS-Addressing в протоколе SOAP 1.1/HTTP или SOAP 1.2/HTTP передачи сообщений. Класс AddressingFeature имеет следующие конструкторы, позволяющие контролировать данное свойство.

  • public AddressingFeature()

Делает возможным использование WS-Addressing.

  • public AddressingFeature(boolean enabled)

Если false, тогда использование WS-Addressing невозможно.

  • public AddressingFeature(boolean enabled, boolean required)

Если required=true, тогда использование WS-Addressing обязательно.

  • public AddressingFeature(boolean enabled, boolean required,
    AddressingFeature.Responses responses)

Перечисление javax.xml.ws.soap.AddressingFeature.Responses имеет константы ANONYMOUS, NON_ANONYMOUS и ALL, конфигурирующие ответы конечной точки.

Аннотация @Addressing(element=value) имеет следующие дополнительные элементы:

  • public abstract boolean enabled — включает или выключает свойство;

  • public abstract boolean required — делает обязательным использование свойства;

  • public abstract AddressingFeature.Responses responses — конфигурирует ответы конечной точки.

Класс javax.xml.ws.soap.MTOMFeature определяет использование MTOM — метода эффективной передачи бинарных данных. Класс MTOMFeature имеет следующие конструкторы.

  • public MTOMFeature()

Делает возможным использование MTOM.

  • public MTOMFeature(boolean enabled)

Если false, тогда использование MTOM невозможно.

  • public MTOMFeature(int threshold)

Указывается размер в байтах бинарных данных, начиная с которого используется MTOM.

  • public MTOMFeature(boolean enabled, int threshold)

Включает или выключает данное свойство с указанием порога его применения.

Аннотация @MTOM(element=value) имеет следующие дополнительные элементы:

  • public abstract boolean enabled — включает или выключает свойство;

  • public abstract int threshold — указывает порог применения свойства.