- java.lang.Object
-
- javax.xml.ws.Endpoint
-
public abstract class Endpoint extends Object
Web服务端点。端点是使用此类中定义的静态方法创建的。 端点总是绑定到一个
Binding
和一个实现者,都设置在端点创建时间。端点处于发布状态或未发布状态。 可以使用
publish
方法开始发布端点,此时它开始接受传入的请求。 相反,可以使用stop
方法来停止接收传入请求并将端点降低。 一旦停止,端点不能再次发布。可以在端点上设置一个
Executor
,以便更好地控制用于调度传入请求的线程。 例如,可以通过创建ThreadPoolExecutor
并将其注册到端点来启用具有某些参数的线程池。处理程序链可以使用包含的
Binding
设置。端点可以具有绑定到它的元数据文档列表,例如WSDL和XMLSchema文档。 在发布时,JAX-WS实现将尽可能地重用尽可能多的元数据,而不是基于实现者上存在的注释生成新元数据。
- 从以下版本开始:
- 1.6,JAX-WS 2.0
- 另请参见:
-
Binding
,BindingType
,SOAPBinding
,Executor
-
-
Field Summary
Fields Modifier and Type Field 描述 static String
WSDL_PORT
标准属性:WSDL端口的名称。static String
WSDL_SERVICE
标准属性:WSDL服务的名称。
-
构造方法摘要
构造方法 Constructor 描述 Endpoint()
-
方法摘要
所有方法 静态方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 static Endpoint
create(Object implementor)
创建具有指定的实现对象的端点。static Endpoint
create(Object implementor, WebServiceFeature... features)
创建具有指定的实现者对象和Web服务功能的端点。static Endpoint
create(String bindingId, Object implementor)
创建具有指定绑定类型和实现方对象的端点。static Endpoint
create(String bindingId, Object implementor, WebServiceFeature... features)
创建具有指定绑定类型,实现方对象和Web服务功能的端点。abstract Binding
getBinding()
返回此端点的绑定。abstract <T extends EndpointReference>
TgetEndpointReference(Class<T> clazz, Element... referenceParameters)
返回EndpointReference
与此相关Endpoint
实例。abstract EndpointReference
getEndpointReference(Element... referenceParameters)
返回EndpointReference
与此相关Endpoint
实例。abstract Executor
getExecutor()
返回此Endpoint
实例的执行者。abstract Object
getImplementor()
返回此端点的实现对象。abstract List<Source>
getMetadata()
返回服务的元数据文档列表。abstract Map<String,Object>
getProperties()
返回此Endpoint
实例的属性包。abstract boolean
isPublished()
如果端点处于已发布状态,则返回true。abstract void
publish(Object serverContext)
在提供的服务器上下文中发布此端点。abstract void
publish(String address)
在给定地址发布此端点。static Endpoint
publish(String address, Object implementor)
在给定的地址创建并发布指定的实现者对象的端点。static Endpoint
publish(String address, Object implementor, WebServiceFeature... features)
在给定的地址创建并发布指定的实现者对象的端点。void
publish(HttpContext serverContext)
在提供的服务器上下文中发布此端点。void
setEndpointContext(EndpointContext ctxt)
通过设置一个EndpointContext
,JAX-WS运行时知道应用程序中其他端点的地址。abstract void
setExecutor(Executor executor)
设置这个Endpoint
实例的执行器。abstract void
setMetadata(List<Source> metadata)
设置此端点的元数据。abstract void
setProperties(Map<String,Object> properties)
设置此Endpoint
实例的属性包。abstract void
stop()
停止发布此端点。
-
-
-
字段详细信息
-
WSDL_SERVICE
public static final String WSDL_SERVICE
标准属性:WSDL服务的名称。键入:javax.xml.namespace.QName
- 另请参见:
- Constant Field Values
-
WSDL_PORT
public static final String WSDL_PORT
标准属性:WSDL端口的名称。键入:javax.xml.namespace.QName
- 另请参见:
- Constant Field Values
-
-
方法详细信息
-
create
public static Endpoint create(Object implementor)
创建具有指定的实现对象的端点。 如果存在通过BindingType注释指定的绑定,则必须使用其他绑定,否则必须使用默认的SOAP 1.1 / HTTP绑定。可以通过调用
publish(String)
和publish(Object)
方法之一来发布新创建的端点。- 参数
-
implementor
- 端点实现者。 - 结果
- 新创建的端点。
-
create
public static Endpoint create(Object implementor, WebServiceFeature... features)
创建具有指定的实现者对象和Web服务功能的端点。 如果存在通过BindingType注释指定的绑定,则必须使用其他绑定,否则必须使用默认的SOAP 1.1 / HTTP绑定。新创建的端点可以通过调用
publish(String)
和publish(Object)
之一来发布。- 参数
-
implementor
- 端点实现者。 -
features
- 要在端点上配置的WebServiceFeature列表。features
参数中不支持的功能将具有默认值。 - 结果
- 新创建的端点。
- 从以下版本开始:
- 1.7,JAX-WS 2.2
-
create
public static Endpoint create(String bindingId, Object implementor)
创建具有指定绑定类型和实现方对象的端点。可以通过调用
publish(String)
和publish(Object)
方法之一来发布新创建的端点。- 参数
-
bindingId
- 指定要使用的绑定的URI。 如果bindingID为null
并且没有通过BindingType注释指定绑定,则必须使用默认的SOAP 1.1 / HTTP绑定。 -
implementor
- 端点实现者。 - 结果
- 新创建的端点。
-
create
public static Endpoint create(String bindingId, Object implementor, WebServiceFeature... features)
创建具有指定绑定类型,实现方对象和Web服务功能的端点。新创建的端点可以通过调用
publish(String)
和publish(Object)
之一来发布。- 参数
-
bindingId
- 指定要使用的绑定的URI。 如果bindingID为null
并且通过BindingType注释未指定绑定,则必须使用默认SOAP 1.1 / HTTP绑定。 -
implementor
- 端点实现者。 -
features
- 要在端点上配置的WebServiceFeature列表。features
参数中不支持的功能将具有默认值。 - 结果
- 新创建的端点。
- 从以下版本开始:
- 1.7,JAX-WS 2.2
-
getBinding
public abstract Binding getBinding()
返回此端点的绑定。- 结果
- 该端点的绑定
-
getImplementor
public abstract Object getImplementor()
返回此端点的实现对象。- 结果
- 这个端点的实现者
-
publish
public abstract void publish(String address)
- 参数
-
address
- 指定要使用的地址的URI。 地址必须与在创建端点时指定的绑定兼容。 - 异常
-
IllegalArgumentException
- 如果提供的地址URI不能与端点绑定一起使用。 -
IllegalStateException
- 如果端点已经被发布或已经被停止。 -
SecurityException
- 如果正在使用java.lang.SecurityManger
,并且应用程序不具有WebServicePermission("publishEndpoint")
权限。
-
publish
public static Endpoint publish(String address, Object implementor)
在给定的地址创建并发布指定的实现者对象的端点。将使用一些默认配置由JAX-WS实现创建和配置必要的服务器基础架构。 为了更好地控制服务器配置,请改用
create(String,Object)
和publish(Object)
方法。- 参数
-
address
- 指定要使用的地址和传输/协议的URI。 http:URI必须导致使用SOAP 1.1 / HTTP绑定。 实现可能支持其他URI方案。 -
implementor
- 端点实现者。 - 结果
- 新创建的端点。
- 异常
-
SecurityException
- 如果使用java.lang.SecurityManger
并且应用程序没有WebServicePermission("publishEndpoint")
权限。
-
publish
public static Endpoint publish(String address, Object implementor, WebServiceFeature... features)
在给定的地址创建并发布指定的实现者对象的端点。 创建的端点配置了Web服务功能。将使用一些默认配置由JAX-WS实现创建和配置必要的服务器基础架构。 为了更好地控制服务器配置,请使用
create(String,Object)
和publish(Object)
方法。- 参数
-
address
- 指定要使用的地址和传输/协议的URI。 http:URI必须导致使用SOAP 1.1 / HTTP绑定。 实现可能支持其他URI方案。 -
implementor
- 端点实现者。 -
features
- 在端点上配置的WebServiceFeature列表。features
参数中不支持的功能将具有默认值。 - 结果
- 新创建的端点。
- 异常
-
SecurityException
- 如果正在使用java.lang.SecurityManger
并且应用程序没有WebServicePermission("publishEndpoint")
权限。 - 从以下版本开始:
- 1.7,JAX-WS 2.2
-
publish
public abstract void publish(Object serverContext)
在提供的服务器上下文中发布此端点。 服务器上下文封装了特定传输的服务器基础架构和寻址信息。 要调用此方法成功,将作为参数传递的服务器上下文必须与端点的绑定兼容。- 参数
-
serverContext
- 表示要用于发布端点的服务器上下文的对象。 - 异常
-
IllegalArgumentException
- 如果提供的服务器上下文不被实现支持或结果与端点绑定结合使用不可用。 -
IllegalStateException
- 如果端点已经被发布或已经被停止。 -
SecurityException
- 如果正在使用java.lang.SecurityManger
,并且应用程序没有WebServicePermission("publishEndpoint")
权限。
-
publish
public void publish(HttpContext serverContext)
在提供的服务器上下文中发布此端点。 服务器上下文封装了特定传输的服务器基础架构和寻址信息。 要调用此方法成功,将作为参数传递的服务器上下文必须与端点的绑定兼容。这意味着容器开发人员能够可移植地发布端点,而不是为最终开发人员发布端点。
- 参数
-
serverContext
- 表示要用于发布端点的服务器上下文的对象。 - 异常
-
IllegalArgumentException
- 如果提供的服务器上下文不被实现支持,或者与端点的绑定结合使用不可用。 -
IllegalStateException
- 如果端点已经发布或者已经被停止。 -
SecurityException
- 如果正在使用java.lang.SecurityManger
,并且应用程序不具有WebServicePermission("publishEndpoint")
权限。 - 从以下版本开始:
- 1.7,JAX-WS 2.2
-
stop
public abstract void stop()
停止发布此端点。 如果端点未处于已发布状态,则此方法无效。
-
isPublished
public abstract boolean isPublished()
如果端点处于已发布状态,则返回true。- 结果
-
如果端点处于已发布状态,
true
。
-
getMetadata
public abstract List<Source> getMetadata()
返回服务的元数据文档列表。- 结果
-
List<javax.xml.transform.Source>
该服务的元数据文档列表
-
setMetadata
public abstract void setMetadata(List<Source> metadata)
设置此端点的元数据。- 参数
-
metadata
- 包含端点元数据信息的XML文档源列表(例如WSDL或XML Schema文档) - 异常
-
IllegalStateException
- 如果端点已经发布。
-
getExecutor
public abstract Executor getExecutor()
返回此Endpoint
实例的执行Endpoint
。 执行器用于向实现者对象发送传入请求。- 结果
-
要用于发送请求的
java.util.concurrent.Executor
。 - 另请参见:
-
Executor
-
setExecutor
public abstract void setExecutor(Executor executor)
设置这个Endpoint
实例的执行器。 执行器用于向实现者对象发送传入请求。 如果这个Endpoint
是使用publish(Object)
方法发布的,并且指定的服务器上下文定义了自己的线程行为,则执行器可能会被忽略。- 参数
-
executor
- 要用于发送请求的java.util.concurrent.Executor
。 - 异常
-
SecurityException
- 如果实例不支持以安全原因设置执行程序(例如缺少必要的权限)。 - 另请参见:
-
Executor
-
getProperties
public abstract Map<String,Object> getProperties()
返回此Endpoint
实例的属性包。- 结果
- 映射<String,Object>与此实例关联的属性包。
-
setProperties
public abstract void setProperties(Map<String,Object> properties)
设置此Endpoint
实例的属性包。- 参数
-
properties
- 与此实例关联的财产袋。
-
getEndpointReference
public abstract EndpointReference getEndpointReference(Element... referenceParameters)
返回EndpointReference
与此相关Endpoint
实例。如果这个
bindingProvider
的绑定是SOAP1.1 / HTTP或SOAP1.2 / HTTP,则必须返回一个W3CEndpointReference
。- 参数
-
referenceParameters
- 与返回的EndpointReference
实例关联的引用参数。 - 结果
-
EndpointReference这个
Endpoint
实例。 如果返回的EndpointReference
是W3CEndpointReference
那么它必须包含指定的referenceParameters
。 - 异常
-
WebServiceException
-如果在创建的任何错误EndpointReference
,或者如果Endpoint
不在公布的状态。 -
UnsupportedOperationException
- 如果这个BindingProvider
使用XML / HTTP绑定。 - 从以下版本开始:
- 1.6,JAX-WS 2.1
- 另请参见:
-
W3CEndpointReference
-
getEndpointReference
public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, Element... referenceParameters)
返回EndpointReference
与此相关Endpoint
实例。- 参数类型
-
T
- EndpointReference的类型。 - 参数
-
clazz
- 指定必须返回的EndpointReference类型。 -
referenceParameters
- 与返回的EndpointReference
实例相关联的参考参数。 - 结果
-
此
Endpoint
实例的类型为clazz
的EndpointReference。 如果返回的EndpointReference
是W3CEndpointReference
那么它必须包含指定的referenceParameters
。 - 异常
-
WebServiceException
-如果在创建的任何错误EndpointReference
,或者如果Endpoint
不在公布的状态,或者如果clazz
是不支持EndpointReference
类型。 -
UnsupportedOperationException
- 如果这个BindingProvider
使用XML / HTTP绑定。 - 从以下版本开始:
- 1.6,JAX-WS 2.1
-
setEndpointContext
public void setEndpointContext(EndpointContext ctxt)
通过设置一个EndpointContext
,JAX-WS运行时知道应用程序中其他端点的地址。 如果多个端点共享WSDL的不同端口,则在访问WSDL时修复多个端口地址。这需要在发布端点之前进行设置。
- 参数
-
ctxt
- 为多个端点共享 - 异常
-
IllegalStateException
- 如果端点已经被发布或已经被停止。 - 从以下版本开始:
- 1.7,JAX-WS 2.2
-
-