javax.xml.ws
类 Endpoint
java.lang.Object
javax.xml.ws.Endpoint
public abstract class Endpointextends Object
Web 服务端点。
使用在此类中定义的静态方法创建端点。一个端点总是绑定到一个 Binding
和一个实现者,这两项都是在创建端点时设置的。
端点要么处于已发布状态,要么处于未发布状态。可以使用 publish
方法开始发布端点,此时端点开始接受传入请求。相反,可以使用 stop
方法停止接受传入请求并取消端点。一旦停止,就不能再次发布该端点。
可以在端点上设置 Executor
以便更好地控制用来指派传入请求的线程。例如,通过创建 ThreadPoolExecutor
并向端点注册可以启用带有特定参数的线程池。
处理程序链可以使用所含的 Binding
来设置。
端点可以使一个元数据文档(如 WSDL 和 XMLSchema 文档)列表与之绑定。发布时,JAX-WS 实现将根据实现者上存在的注释,尽可能多地重用这些元数据,而不是生成新的元数据。
-
从以下版本开始:
- JAX-WS 2.0 另请参见:
-
Binding
,BindingType
,SOAPBinding
,Executor
字段摘要 | |
---|---|
static String | WSDL_PORT 标准属性:WSDL 端口的名称。 |
static String | WSDL_SERVICE 标准属性:WSDL 服务的名称。 |
构造方法摘要 | |
---|---|
Endpoint() |
方法摘要 | |
---|---|
static Endpoint | create(Object implementor) 创建具有指定实现者对象的端点。 |
static Endpoint | create(String bindingId, Object implementor) 创建具有指定绑定类型和实现者对象的端点。 |
abstract Binding | getBinding() 返回此端点的绑定。 |
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) 在给定地址处针对指定的实现者对象创建并发布端点。 |
abstract void | setExecutor(Executor executor) 设置此 Endpoint 实例的执行程序。 |
abstract void | setMetadata(List<Source> metadata) 设置此端点的元数据。 |
abstract void | setProperties(Map<String,Object> properties) 设置此 Endpoint 实例的属性包。 |
abstract void | stop() 停止发布此端点。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
WSDL_SERVICE
public static final String WSDL_SERVICE
-
标准属性:WSDL 服务的名称。
类型:javax.xml.namespace.QName
-
另请参见:
- 常量字段值
WSDL_PORT
public static final String WSDL_PORT
-
标准属性:WSDL 端口的名称。
类型:javax.xml.namespace.QName
-
另请参见:
- 常量字段值
构造方法详细信息 |
---|
Endpoint
public Endpoint()
方法详细信息 |
---|
create
public static Endpoint create(Object implementor)
-
创建具有指定实现者对象的端点。如果存在通过 BindingType 注释指定的绑定,则必须使用该绑定,否则必须使用默认的 SOAP 1.1 / HTTP 绑定。
可以通过调用 javax.xml.ws.Endpoint#publish(String) 和 javax.xml.ws.Endpoint#publish(Object) 方法之一来发布新创建的端点。
-
-
参数:
-
implementor
- 端点实现者。
返回:
- 新创建的端点。
-
create
public static Endpoint create(String bindingId, Object implementor)
-
创建具有指定绑定类型和实现者对象的端点。
可以通过调用 javax.xml.ws.Endpoint#publish(String) 和 javax.xml.ws.Endpoint#publish(Object) 方法之一来发布新创建的端点。
-
-
参数:
-
bindingId
- 一个 URI,指定要使用的绑定。如果 bindingID 为null
并且没有通过 BindingType 注释指定任何绑定,则必须使用默认的 SOAP 1.1 / HTTP 绑定。 -
implementor
- 端点实现者。
返回:
- 新创建的端点。
-
getBinding
public abstract Binding getBinding()
- 返回此端点的绑定。
-
-
返回:
- 此端点的绑定
getImplementor
public abstract Object getImplementor()
- 返回此端点的实现对象。
-
-
返回:
- 此端点的实现者
publish
public abstract void publish(String address)
- 在给定地址处发布此端点。JAX-WS 实现将使用一些默认的配置创建和配置所需的服务器基础设施。若要更多地控制服务器配置,请使用 javax.xml.ws.Endpoint#publish(Object) 方法。
-
-
参数:
-
address
- 一个 URI,指定要使用的地址。地址必须与创建端点时指定的绑定兼容。
抛出:
-
IllegalArgumentException
- 如果提供的地址 URI 不能与端点的绑定结合使用。 -
IllegalStateException
- 如果已发布端点或者已停止端点。
-
publish
public static Endpoint publish(String address, Object implementor)
-
在给定地址处针对指定的实现者对象创建并发布端点。
JAX-WS 实现将使用一些默认的配置创建和配置所需的服务器基础设施。 若要更多地控制服务器配置,请使用 javax.xml.ws.Endpoint#create(String,Object) 和 javax.xml.ws.Endpoint#publish(Object) 方法。
-
-
参数:
-
address
- 一个 URI,指定要使用的地址和传输/协议。http:URI 一定会导致使用 SOAP 1.1/HTTP 绑定。实现可以支持其他 URI 方案。 -
implementor
- 端点实现者。
返回:
- 新创建的端点。
-
publish
public abstract void publish(Object serverContext)
- 在提供的服务器上下文中发布此端点。服务器上下文封装了用于特定传输的服务器基础设施和寻址信息。要成功调用该方法,作为参数传递给它的服务器上下文必须与端点的绑定兼容。
-
-
参数:
-
serverContext
- 表示发布端点所用服务器上下文的对象。
抛出:
-
IllegalArgumentException
- 如果实现不支持提供的服务器上下文,或者被证明无法与端点的绑定结合使用。 -
IllegalStateException
- 如果已发布端点或者已停止端点。
-
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 模式文档)列表
抛出:
-
IllegalStateException
- 如果已发布端点。
-
getExecutor
public abstract Executor getExecutor()
-
返回此
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
实例的属性包。 -
-
返回:
- Map<String,Object>,与此实例关联的属性包。
setProperties
public abstract void setProperties(Map<String,Object> properties)
-
设置此
Endpoint
实例的属性包。 -
-
参数:
-
properties
- 与此实例关联的属性包。
-