public abstract class Provider extends Object
ServiceDelegate和
Endpoint对象的服务提供商。
| Modifier and Type | Field and Description |
|---|---|
static String |
JAXWSPROVIDER_PROPERTY
表示用于查找
Provider实现类的名称的属性的常量。
|
| Modifier | Constructor and Description |
|---|---|
protected |
Provider()
创建一个新的Provider实例
|
| Modifier and Type | Method and Description |
|---|---|
abstract Endpoint |
createAndPublishEndpoint(String address, Object implementor)
创建并发布具有指定地址和实现对象的端点对象。
|
Endpoint |
createAndPublishEndpoint(String address, Object implementor, WebServiceFeature... features)
创建并发布具有指定地址,实现对象和Web服务功能的端点对象。
|
Endpoint |
createEndpoint(String bindingId, 类<?> implementorClass, Invoker invoker, WebServiceFeature... features)
使用提供的绑定,实现类,调用者和Web服务功能创建端点对象。
|
abstract Endpoint |
createEndpoint(String bindingId, Object implementor)
使用提供的绑定和实现对象创建端点对象。
|
Endpoint |
createEndpoint(String bindingId, Object implementor, WebServiceFeature... features)
使用提供的绑定,实现对象和Web服务功能创建端点对象。
|
abstract ServiceDelegate |
createServiceDelegate(URL wsdlDocumentLocation, QName serviceName, 类<? extends Service> serviceClass)
创建服务委托对象。
|
ServiceDelegate |
createServiceDelegate(URL wsdlDocumentLocation, QName serviceName, 类<? extends Service> serviceClass, WebServiceFeature... features)
创建服务委托对象。
|
abstract W3CEndpointReference |
createW3CEndpointReference(String address, QName serviceName, QName portName, List<Element> metadata, String wsdlDocumentLocation, List<Element> referenceParameters)
工厂方法创建一个
W3CEndpointReference 。
|
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 。
|
abstract <T> T |
getPort(EndpointReference endpointReference, 类<T> serviceEndpointInterface, WebServiceFeature... features)
getPort方法返回代理。
|
static Provider |
provider()
创建一个新的提供者对象。
|
abstract EndpointReference |
readEndpointReference(Source eprInfoset)
从eprInfoset中的信息集读取
eprInfoset 。
|
public static final String JAXWSPROVIDER_PROPERTY
Provider实现类名称的属性。
public static Provider provider()
用于定位要使用的提供者子类的算法包括以下步骤:
META-INF/services/javax.xml.ws.spi.Provider的资源,则将其第一行(如果存在)用作实现类的UTF-8编码名称。 java.util.Properties.load(InputStream)方法读取,并且它包含一个条目,其密钥为javax.xml.ws.spi.Provider ,则该条目的值将用作实现类的名称。 javax.xml.ws.spi.Provider的系统属性,则将其值用作实现类的名称。 public abstract ServiceDelegate createServiceDelegate(URL wsdlDocumentLocation, QName serviceName, 类<? extends Service> serviceClass)
wsdlDocumentLocation - 指向服务的WSDL文档的URL,如果没有,
null 。
serviceName - 服务的限定名称。
serviceClass - 服务类,必须是
javax.xml.ws.Service或其子类。
public ServiceDelegate createServiceDelegate(URL wsdlDocumentLocation, QName serviceName, 类<? extends Service> serviceClass, WebServiceFeature... features)
wsdlDocumentLocation - 指向服务的WSDL文档的URL,如果没有一个
null 。
serviceName - 服务的限定名称。
serviceClass - 服务类,必须是
javax.xml.ws.Service或其子类。
features - 必须在服务上配置的Web Service功能。
如果提供程序不了解某项功能,则必须抛出WebServiceException。
public abstract Endpoint createEndpoint(String bindingId, Object implementor)
bindingId - 指定所需绑定的URI(例如SOAP / HTTP)
implementor - 将要调度传入请求的服务实现对象。
相应的类必须使用所有必要的Web服务注释进行注释。
public abstract Endpoint createAndPublishEndpoint(String address, Object implementor)
address - 指定要使用的地址和传输/协议的URI。
http:URI必须导致使用SOAP 1.1 / HTTP绑定。
实现可能支持其他URI方案。
implementor - 将要调度传入请求的服务实现对象。
相应的类必须使用所有必要的Web服务注释进行注释。
public abstract EndpointReference readEndpointReference(Source eprInfoset)
eprInfoset的信息集读取
eprInfoset 。
eprInfoset - 用于EndpointReference的信息集
EndpointReference从解组eprInfoset 。
此方法从不返回null 。
WebServiceException -如果有错误创建
EndpointReference从指定的
eprInfoset 。
NullPointerException - 如果给出了
null
eprInfoset值。
public abstract <T> T getPort(EndpointReference endpointReference, 类<T> serviceEndpointInterface, WebServiceFeature... features)
endpointReference ,则这些参考参数必须显示为SOAP标头,指示它们是参照参数,对发送到端点的所有消息。
参数serviceEndpointInterface指定返回代理支持的服务端点接口。
参数endpointReference指定返回的代理将调用的端点。
在此方法的实施中,JAX-WS运行时系统需要选择协议绑定(和端口)和来自的WSDL元数据相应地配置代理的责任serviceEndpointInterface和EndpointReference 。
为了成功返回代理的方法,WSDL元数据必须可用,并且endpointReference必须包含一个理解为serviceName元数据的实现。
endpointReference - 返回的代理将调用的EndpointReference。
serviceEndpointInterface - 服务端点接口
features - 要在代理上配置的WebServiceFeatures列表。
支持的功能不是在features参数将其默认值。
WebServiceException -
endpointReference是非法的 serviceEndpointInterface指定 WebServiceFeature
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应用程序发布的端点, javax.lang.IllegalStateException必须抛出javax.lang.IllegalStateException 。
address - 指定目标端点的地址
serviceName - WSDL中服务的合格名称。
portName - WSDL中端点的合格名称。
metadata - 应添加到
W3CEndpointReference实例
wsa:metadata元素的元素列表。
wsdlDocumentLocation - 服务的WSDL文档位置的URL。
referenceParameters - 与返回的
EndpointReference实例相关联的
EndpointReference参数。
W3CEndpointReference从创建serviceName , portName , metadata , wsdlDocumentLocation和referenceParameters 。
这种方法永远不会返回null 。
IllegalStateException -
address , serviceName和portName都null 。 serviceName服务是null和portName不是null 。 address属性为null ,并且serviceName和portName未指定由同一Java EE应用程序发布的有效端点。 serviceName不是null并且不在指定的WSDL中。 portName端口不是null ,并且它不存在于WSDL中的serviceName服务中。 wsdlDocumentLocation不是null并且不表示有效的WSDL。 WebServiceException - 如果在创建
W3CEndpointReference时发生错误。
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应用程序发布的端点, javax.lang.IllegalStateException必须抛出javax.lang.IllegalStateException 。
address - 指定目标端点的地址
interfaceName -
wsam:InterfaceName元素在
wsa:Metadata元素。
serviceName - WSDL中服务的合格名称。
portName - WSDL中端点的合格名称。
metadata - 应添加到
W3CEndpointReference实例
wsa:metadata元素的元素列表。
wsdlDocumentLocation - 服务的WSDL文档位置的URL。
referenceParameters - 与返回的
EndpointReference实例相关联的
EndpointReference参数。
elements - 与返回的
EndpointReference实例相关联的扩展元素。
attributes - 与返回的
EndpointReference实例相关联的
EndpointReference属性。
W3CEndpointReference从创建serviceName , portName , metadata , wsdlDocumentLocation和referenceParameters 。
这种方法永远不会返回null 。
IllegalStateException -
address , serviceName和portName都null 。 serviceName服务是null和portName不是null 。 address属性为null ,并且serviceName和portName未指定由同一Java EE应用程序发布的有效端点。 serviceName不是null并且不在指定的WSDL中。 portName端口不是null ,并且它不存在于WSDL中的serviceName服务中。 wsdlDocumentLocation不是null并且不表示有效的WSDL。 wsdlDocumentLocation不是null但是wsdli:wsdlLocation的命名空间名称不能从可用的元数据获得。 WebServiceException - 如果在创建
W3CEndpointReference时发生错误。
public Endpoint createAndPublishEndpoint(String address, Object implementor, WebServiceFeature... features)
Provider实现必须覆盖默认实现。
address - 指定要使用的地址和传输/协议的URI。
http:URI必须导致使用SOAP 1.1 / HTTP绑定。
实现可能支持其他URI方案。
implementor - 要发送传入请求的服务实现对象。
相应的类必须使用所有必要的Web服务注释进行注释。
features - 要在端点上配置的WebServiceFeatures列表。
支持的功能不是在features参数将其默认值。
public Endpoint createEndpoint(String bindingId, Object implementor, WebServiceFeature... features)
Provider实现必须覆盖默认实现。
bindingId - 指定所需绑定的URI(例如SOAP / HTTP)
implementor - 将要调度传入请求的服务实现对象。
相应的类必须使用所有必要的Web服务注释进行注释。
features - 要在端点上配置的WebServiceFeatures的列表。
支持的功能不是在features参数将其默认值。
public Endpoint createEndpoint(String bindingId, 类<?> implementorClass, Invoker invoker, WebServiceFeature... features)
Provider实现必须覆盖默认实现。
bindingId - 指定所需绑定的URI(例如SOAP / HTTP)。
可以为null。
implementorClass - 必须使用所有必需的Web服务注释注释的服务实现类。
invoker - 对服务实例进行实际调用。
features - 要在端点上配置的WebServiceFeatures列表。
支持的功能不是在features参数将其默认值。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.