Класс Provider
- java.lang.Object
-
- javax.xml.ws.spi.Provider
public abstract class Provider extends Object
Поставщик сервисов для объектов ServiceDelegate и Endpoint.
- Since:
- JAX-WS 2.0
Поля
| Модификатор и тип | Поле и описание |
|---|---|
static String |
JAXWSPROVIDER_PROPERTY Константа, представляющая свойство для поиска имени класса реализации |
Конструкторы
| Модификатор | Конструктор и описание |
|---|---|
protected |
Provider() Создаёт новый экземпляр Provider |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
abstract Endpoint |
createAndPublishEndpoint(String address,
Object implementor) Создаёт и публикует объект конечной точки с указанным адресом и объектом реализации. |
Endpoint |
createAndPublishEndpoint(String address,
Object implementor,
WebServiceFeature... features) Создаёт и публикует объект конечной точки с указанным адресом, объектом реализации и функциями веб-сервиса. |
Endpoint |
createEndpoint(String bindingId,
Class<?> implementorClass,
Invoker invoker,
WebServiceFeature... features) Создаёт объект конечной точки с заданным связыванием, классом реализации, вызывающим объектом и функциями веб-сервиса. |
abstract Endpoint |
createEndpoint(String bindingId,
Object implementor) Создаёт объект конечной точки с заданным связыванием и объектом реализации. |
Endpoint |
createEndpoint(String bindingId,
Object implementor,
WebServiceFeature... features) Создаёт объект конечной точки с заданным связыванием, объектом реализации и функциями веб-сервиса. |
abstract ServiceDelegate |
createServiceDelegate(URL wsdlDocumentLocation,
QName serviceName,
Class<? extends Service> serviceClass) Создаёт объект делегата сервиса. |
ServiceDelegate |
createServiceDelegate(URL wsdlDocumentLocation,
QName serviceName,
Class<? extends Service> serviceClass,
WebServiceFeature... features) Создаёт объект делегата сервиса. |
abstract W3CEndpointReference |
createW3CEndpointReference(String address,
QName serviceName,
QName portName,
List<Element> metadata,
String wsdlDocumentLocation,
List<Element> referenceParameters) Метод-фабрика для создания |
W3CEndpointReference |
createW3CEndpointReference(String address,
QName interfaceName,
QName serviceName,
QName portName,
List<Element> metadata,
String wsdlDocumentLocation,
List<Element> referenceParameters,
List<Element> elements,
Map<QName,String> attributes) Метод-фабрика для создания |
abstract <T> T |
getPort(EndpointReference endpointReference,
Class<T> serviceEndpointInterface,
WebServiceFeature... features) Метод getPort возвращает прокси. |
static Provider |
provider() Создаёт новый объект поставщика. |
abstract EndpointReference |
readEndpointReference(Source eprInfoset) Чтение EndpointReference из набора данных, содержащегося в |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
JAXWSPROVIDER_PROPERTY
public static final String JAXWSPROVIDER_PROPERTY
Константа, представляющая свойство, используемое для поиска имени класса реализации Provider.
- См. также:
- Значения константных полей
Конструкторы
Provider
protected Provider()
Создаёт новый экземпляр Provider
Методы
provider
public static Provider provider()
Создаёт новый объект провайдера.
Алгоритм поиска подкласса провайдера состоит из следующих шагов:
- Если существует ресурс с именем
META-INF/services/javax.xml.ws.spi.Provider, то его первая строка (если присутствует) используется в качестве имени класса реализации, закодированного в UTF-8. - Если файл $java.home/lib/jaxws.properties существует и доступен для чтения методом
java.util.Properties.load(InputStream), и содержит запись с ключомjavax.xml.ws.spi.Provider, то значение этой записи используется в качестве имени класса реализации. - Если определена системная переменная
javax.xml.ws.spi.Provider, то её значение используется в качестве имени класса реализации. - В противном случае используется имя класса реализации по умолчанию.
createServiceDelegate
public abstract ServiceDelegate createServiceDelegate(URL wsdlDocumentLocation,
QName serviceName,
Class<? extends Service> serviceClass) Создаёт объект делегата сервиса.
- Параметры:
-
wsdlDocumentLocation- URL, указывающий на документ WSDL для сервиса, илиnullесли он отсутствует. -
serviceName- Квалифицированное имя сервиса. -
serviceClass- Класс сервиса, который ДОЛЖЕН бытьjavax.xml.ws.Serviceили его подклассом. - Возвращает:
- Созданный объект делегата сервиса.
createServiceDelegate
public ServiceDelegate createServiceDelegate(URL wsdlDocumentLocation,
QName serviceName,
Class<? extends Service> serviceClass,
WebServiceFeature... features) Создаёт объект делегата сервиса.
- Параметры:
-
wsdlDocumentLocation- URL, указывающий на документ WSDL для сервиса, илиnullесли он отсутствует. -
serviceName- Квалифицированное имя сервиса. -
serviceClass- Класс сервиса, который ДОЛЖЕН бытьjavax.xml.ws.Serviceили его подклассом. -
features- Функциональные особенности веб-сервиса, которые должны быть настроены для сервиса. Если провайдер не поддерживает функцию, он должен выбросить исключение WebServiceException. - Возвращает:
- Созданный объект делегата сервиса.
- С момента:
- JAX-WS 2.2
createEndpoint
public abstract Endpoint createEndpoint(String bindingId,
Object implementor) Создаёт объект конечной точки с указанным объектом привязки и реализации.
- Параметры:
-
bindingId- URI, определяющий желаемую привязку (например, SOAP/HTTP) -
implementor- Объект реализации сервиса, которому будут отправляться входящие запросы. Соответствующий класс ДОЛЖЕН быть аннотирован всеми необходимыми аннотациями веб-сервиса. - Возвращает:
- Созданную конечную точку.
createAndPublishEndpoint
public abstract Endpoint createAndPublishEndpoint(String address,
Object implementor) Создаёт и публикует объект конечной точки с указанным адресом и объектом реализации.
- Параметры:
-
address- URI, определяющий адрес и транспорт/протокол. URI http: ДОЛЖЕН привести к использованию привязки SOAP 1.1/HTTP. Реализации могут поддерживать другие схемы URI. -
implementor- Объект реализации сервиса, которому будут отправляться входящие запросы. Соответствующий класс ДОЛЖЕН быть аннотирован всеми необходимыми аннотациями веб-сервиса. - Возвращает:
- Созданную конечную точку.
readEndpointReference
public abstract EndpointReference readEndpointReference(Source eprInfoset)
Считывает EndpointReference из набора данных, содержащегося в eprInfoset.
- Параметры:
-
eprInfoset- набор данных для EndpointReference - Возвращает:
- распакованный
EndpointReferenceизeprInfoset. Этот метод никогда не возвращаетnull. - Исключения:
-
WebServiceException- Если произошла ошибка при созданииEndpointReferenceиз указанногоeprInfoset. -
NullPointerException- Если значениеnulleprInfosetзадано. - С момента:
- JAX-WS 2.1
getPort
public abstract <T> T getPort(EndpointReference endpointReference,
Class<T> serviceEndpointInterface,
WebServiceFeature... features) Метод getPort возвращает прокси. Если в endpointReference присутствуют параметры ссылки, то эти параметры ДОЛЖНЫ появляться как SOAP-заголовки, указывая, что они являются параметрами ссылки, во всех сообщениях, отправленных на конечную точку. Параметр serviceEndpointInterface определяет интерфейс конечной точки сервиса, который поддерживается возвращаемым прокси. Параметр endpointReference определяет конечную точку, которая будет вызвана возвращаемым прокси. В реализации этого метода система выполнения JAX-WS берёт на себя ответственность за выбор привязки протокола (и порта) и настройку прокси в соответствии с метаданными WSDL serviceEndpointInterface и EndpointReference. Для успешного возврата прокси метаданные WSDL ДОЛЖНЫ быть доступны, и endpointReference ДОЛЖЕН содержать реализацию, понятную serviceName метаданным.
- Параметры:
-
endpointReference- EndpointReference, который будет вызван возвращаемым прокси. -
serviceEndpointInterface- Интерфейс конечной точки сервиса -
features- Список функциональных особенностей WebService, которые должны быть настроены в прокси. Поддерживаемые функции, отсутствующие в параметреfeatures, будут иметь значения по умолчанию. - Возвращает:
- Объект-прокси, поддерживающий указанный интерфейс конечной точки сервиса
- Исключения:
-
WebServiceException-- Если произошла ошибка при создании прокси
- Если отсутствуют необходимые метаданные WSDL
- Если данный
endpointReferenceявляется некорректным - Если указан некорректный
serviceEndpointInterface - Если включена функция, несовместимая с этим портом или неподдерживаемая.
- С момента:
- JAX-WS 2.1
- См. также:
WebServiceFeature
createW3CEndpointReference
public abstract W3CEndpointReference createW3CEndpointReference(String address,
QName serviceName,
QName portName,
List<Element> metadata,
String wsdlDocumentLocation,
List<Element> referenceParameters) Метод-фабрика для создания W3CEndpointReference.
Этот метод можно использовать для создания W3CEndpointReference для любой конечной точки, указав свойство address вместе с другими желаемыми свойствами. Этот метод также можно использовать для создания W3CEndpointReference для конечной точки, опубликованной в том же приложении Java EE. Для этого можно предоставить свойство address или этот метод может автоматически определить address конечной точки, опубликованной в том же приложении Java EE и идентифицируемой свойствами serviceName и portName. Если address равно null, а serviceName и portName не идентифицируют конечную точку, опубликованную в том же приложении Java EE, ДОЛЖНО быть выброшено исключение.
- Параметры:
-
address- Указывает адрес целевой конечной точки -
serviceName- Квалифицированное имя сервиса в WSDL. -
portName- Квалифицированное имя конечной точки в WSDL. -
metadata- Список элементов, которые должны быть добавлены вW3CEndpointReferenceэкземпляры элементаwsa:metadata. -
wsdlDocumentLocation- URL расположения документа WSDL для сервиса. -
referenceParameters- Параметры ссылки, которые будут связаны с возвращённым экземпляромEndpointReference. - Возвращает:
- созданный
W3CEndpointReferenceизserviceName,portName,metadata,wsdlDocumentLocationиreferenceParameters. Этот метод никогда не возвращаетnull. - Исключения:
-
IllegalStateException-- Если
address,serviceNameиportNameвсе имеют значениеnull. - Если сервис
serviceNameиportNameНЕ являетсяnull. - Если свойство
addressимеет значениеnull, иserviceNameиportNameне указывают на допустимую конечную точку, опубликованную в том же приложении Java EE. - Если
serviceNameНЕ являетсяnullи не присутствует в указанном WSDL. - Если порт
portNameне являетсяnullи не присутствует в сервисеserviceNameв WSDL. - Если
wsdlDocumentLocationНЕ являетсяnullи не представляет собой допустимый WSDL.
- Если
-
WebServiceException- Если произошла ошибка при созданииW3CEndpointReference. - С момента:
- JAX-WS 2.1
createW3CEndpointReference
public W3CEndpointReference createW3CEndpointReference(String address,
QName interfaceName,
QName serviceName,
QName portName,
List<Element> metadata,
String wsdlDocumentLocation,
List<Element> referenceParameters,
List<Element> elements,
Map<QName,String> attributes) Метод-фабрика для создания W3CEndpointReference. Используя этот метод, можно создать экземпляр W3CEndpointReference с расширяющими элементами и атрибутами. Реализации Provider должны переопределять реализацию по умолчанию.
Этот метод можно использовать для создания W3CEndpointReference для любой конечной точки, указав свойство address вместе с другими желаемыми свойствами. Этот метод также можно использовать для создания W3CEndpointReference для конечной точки, опубликованной в том же приложении Java EE. Для этого можно предоставить свойство address или этот метод может автоматически определить address конечной точки, опубликованной в том же приложении Java EE и идентифицируемой свойствами serviceName и portName. Если address имеет значение null, а serviceName и portName не идентифицируют конечную точку, опубликованную в том же приложении Java EE, ДОЛЖНО быть выброшено исключение.
- Параметры:
-
address- Указывает адрес целевого конечной точки -
interfaceName- элементwsam:InterfaceNameв элементеwsa:Metadata. -
serviceName- Квалифицированное имя службы в WSDL. -
portName- Квалифицированное имя конечной точки в WSDL. -
metadata- Список элементов, которые должны быть добавлены к экземплярамW3CEndpointReferenceэлементаwsa:metadata. -
wsdlDocumentLocation- URL расположения документа WSDL для службы. -
referenceParameters- Параметры ссылки, которые будут связаны с возвращаемым экземпляромEndpointReference. -
elements- элементы расширения, которые будут связаны с возвращаемым экземпляромEndpointReferenceэкземпляра. -
attributes- атрибуты расширения, которые будут связаны с возвращаемым экземпляромEndpointReferenceэкземпляра. - Возвращает:
- созданный из
serviceName,portName,metadata,wsdlDocumentLocationиreferenceParametersW3CEndpointReference. Этот метод никогда не возвращаетnull. - Исключения:
-
IllegalStateException-- Если
address,serviceNameиportNameвсеnull. - Если служба
serviceNameявляетсяnull, аportNameНЕnull. - Если свойство
addressравноnull, аserviceNameиportNameне задают допустимую конечную точку, опубликованную той же Java EE-приложением. - Если
serviceNameНЕnullи не присутствует в указанном WSDL. - Если порт
portNameнеnullи не присутствует в службеserviceNameв WSDL. - Если
wsdlDocumentLocationНЕnullи не представляет собой допустимый WSDL. - Если
wsdlDocumentLocationНЕnull, но имя пространства имён wsdli:wsdlLocation нельзя получить из доступных метаданных.
- Если
-
WebServiceException- Если при созданииW3CEndpointReferenceпроизошла ошибка. - С:
- JAX-WS 2.2
createAndPublishEndpoint
public Endpoint createAndPublishEndpoint(String address,
Object implementor,
WebServiceFeature... features) Создаёт и публикует объект конечной точки с указанным адресом, объектом реализации и функциями веб-службы. Provider реализации должны переопределять стандартную реализацию.
- Параметры:
-
address- URI, определяющий адрес и транспорт/протокол для использования. URI http: ОБЯЗАТЕЛЬНО приводит к использованию привязки SOAP 1.1/HTTP. Реализации могут поддерживать другие схемы URI. -
implementor- Объект реализации службы, которому будут направляться входящие запросы. Соответствующий класс ДОЛЖЕН быть аннотирован всеми необходимыми аннотациями веб-службы. -
features- Список WebServiceFeatures для настройки конечной точки. Поддерживаемые функции, отсутствующие в параметреfeatures, будут использовать свои значения по умолчанию. - Возвращает:
- Новый созданный объект конечной точки.
- С:
- JAX-WS 2.2
createEndpoint
public Endpoint createEndpoint(String bindingId,
Object implementor,
WebServiceFeature... features) Создаёт объект конечной точки с указанной привязкой, объектом реализации и функциями веб-службы. Provider реализации должны переопределять стандартную реализацию.
- Параметры:
-
bindingId- URI, указывающий желаемую привязку (например, SOAP/HTTP) -
implementor- Объект реализации службы, которому будут направляться входящие запросы. Соответствующий класс ДОЛЖЕН быть аннотирован всеми необходимыми аннотациями веб-службы. -
features- Список WebServiceFeatures для настройки конечной точки. Поддерживаемые функции, отсутствующие в параметреfeatures, будут использовать свои значения по умолчанию. - Возвращает:
- Новый созданный объект конечной точки.
- С:
- JAX-WS 2.2
createEndpoint
public Endpoint createEndpoint(String bindingId,
Class<?> implementorClass,
Invoker invoker,
WebServiceFeature... features) Создаёт объект конечной точки с указанной привязкой, классом реализации, вызывающим объектом и функциями веб-службы. Контейнеры обычно используют это для создания объектов Endpoint. Provider реализации должны переопределять стандартную реализацию.
- Параметры:
-
bindingId- URI, указывающий желаемую привязку (например, SOAP/HTTP). Может быть null. -
implementorClass- Класс реализации службы, который ДОЛЖЕН быть аннотирован всеми необходимыми аннотациями веб-службы. -
invoker- выполняет фактическое вызов на экземпляре службы. -
features- Список WebServiceFeatures для настройки конечной точки. Поддерживаемые функции, отсутствующие в параметреfeatures, будут использовать свои значения по умолчанию. - Возвращает:
- Новый созданный объект конечной точки.
- С:
- JAX-WS 2.2
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.