public abstract class ServiceDelegate extends Object
Service对象使用,以允许JAX-WS实现的可插拔性。 
        每个Service对象都有自己的委托,使用Provider.createServiceDelegate(java.net.URL, javax.xml.namespace.QName, java.lang.Class<? extends javax.xml.ws.Service>)方法创建。 Service对象将其所有实例方法委托给其委托。 
| Modifier | Constructor and Description | 
|---|---|
| protected  | ServiceDelegate() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract void | addPort(QName portName, String bindingId, String endpointAddress)
              为服务创建一个新的端口。 
             | 
| abstract <T> Dispatch<T> | createDispatch(EndpointReference endpointReference, 类<T> type, Service.Mode mode, WebServiceFeature... features)
              创建一个 
              Dispatch实例,供用户选择的对象使用。 | 
| abstract Dispatch<Object> | createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
              创建一个用于JAXB生成的对象的 
              Dispatch实例。 | 
| abstract <T> Dispatch<T> | createDispatch(QName portName, 类<T> type, Service.Mode mode)
              创建一个 
              Dispatch实例,供用户选择的对象使用。 | 
| abstract <T> Dispatch<T> | createDispatch(QName portName, 类<T> type, Service.Mode mode, WebServiceFeature... features)
              创建一个 
              Dispatch实例,供用户选择的对象使用。 | 
| abstract Dispatch<Object> | createDispatch(QName portName, JAXBContext context, Service.Mode mode)
              创建一个用于JAXB生成的对象的 
              Dispatch实例。 | 
| abstract Dispatch<Object> | createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
              创建一个用于JAXB生成的对象的 
              Dispatch实例。 | 
| abstract Executor | getExecutor()
              返回此 
              Service实例的执行程序。 | 
| abstract HandlerResolver | getHandlerResolver()
              返回配置的处理程序解析器。 
             | 
| abstract <T> T | getPort(类<T> serviceEndpointInterface)getPort方法返回一个代理。 | 
| abstract <T> T | getPort(类<T> serviceEndpointInterface, WebServiceFeature... features)getPort方法返回一个代理。 | 
| abstract <T> T | getPort(EndpointReference endpointReference, 类<T> serviceEndpointInterface, WebServiceFeature... features)getPort方法返回一个代理。 | 
| abstract <T> T | getPort(QName portName, 类<T> serviceEndpointInterface)getPort方法返回一个代理。 | 
| abstract <T> T | getPort(QName portName, 类<T> serviceEndpointInterface, WebServiceFeature... features)getPort方法返回代理。 | 
| abstract Iterator<QName> | getPorts()
              返回 
              Iterator,用于QName服务分组的QName个服务端点列表 | 
| abstract QName | getServiceName()
              获取此服务的名称。 
             | 
| abstract URL | getWSDLDocumentLocation()
              获取此服务的WSDL文档的位置。 
             | 
| abstract void | setExecutor(Executor executor)
              设置此 
              Service实例的执行程序。 | 
| abstract void | setHandlerResolver(HandlerResolver handlerResolver)
              设置 
              HandlerResolver这个Service实例。 | 
public abstract <T> T getPort(QName portName, 类<T> serviceEndpointInterface)
getPort方法返回代理。 
           服务客户端使用此代理来调用目标服务端点上的操作。 
           serviceEndpointInterface指定创建的动态代理实例支持的服务端点接口。 
          portName - WSDL服务描述中服务端点的合格名称 
           serviceEndpointInterface - 动态代理支持的服务端点接口 
           WebServiceException - 在以下情况下抛出此异常: 
            serviceEndpointInterface或portName指定 Proxy , InvocationHandler 
           public abstract <T> T getPort(QName portName, 类<T> serviceEndpointInterface, WebServiceFeature... features)
getPort方法返回代理。 
           服务客户端使用此代理来调用目标服务端点上的操作。 
           serviceEndpointInterface指定创建的动态代理实例支持的服务端点接口。 
          portName - WSDL服务描述中服务端点的合格名称 
           serviceEndpointInterface - 动态代理或实例支持的服务端点接口 
           features - 要在代理上配置的WebServiceFeatures的列表。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 在以下情况下抛出此异常: 
            serviceEndpointInterface或portName指定 Proxy , InvocationHandler , WebServiceFeature 
           public abstract <T> T getPort(EndpointReference endpointReference, 类<T> serviceEndpointInterface, WebServiceFeature... features)
getPort方法返回代理。 
           参数endpointReference endpointReference将由返回的代理调用的端点。 
           如果有在任何参考参数endpointReference ,则这些参考参数必须显示为SOAP标头,指示它们是参照参数,对发送到端点的所有消息。 
           endpointReference's地址必须用于端点上的调用。 
           参数serviceEndpointInterface指定返回的代理支持的服务端点接口。 
           在此方法的实施中,JAX-WS运行时系统需要选择协议绑定(和端口),并从与此相关联的WSDL相应地配置代理的责任Service实例或从元数据endpointReference 。 
           如果此Service实例具有WSDL,并且endpointReference元数据也具有WSDL,则必须使用此实例的WSDL。 
           如果这个Service实例没有WSDL,并且endpointReference确实有一个WSDL,那么可以使用endpointReference的WSDL。 
           返回的代理不应由客户机重新配置。 
           如果此Service实例具有与WSDL中包含的信息相匹配的已知代理端口,则返回该代理,否则抛出WebServiceException。 
           调用此方法具有与以下相同的行为
  port = service.getPort(portName, serviceEndpointInterface);  
           其中portName从的元数据检索endpointReference或从serviceEndpointInterface和与此相关的WSDL Service实例。 
          endpointReference - 将由返回的代理调用的目标服务端点的 
            EndpointReference 。 
           serviceEndpointInterface - 服务端点接口。 
           features - 要在代理上配置的WebServiceFeatures的列表。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 
            endpointReference元数据与此Service实例的serviceName不匹配。 portName不能从WSDL或提取endpointReference元数据。 endpointReference指定。 serviceEndpointInterface指定。 public abstract <T> T getPort(类<T> serviceEndpointInterface)
getPort方法返回代理。 
           参数serviceEndpointInterface指定返回的代理支持的服务端点接口。 
           在实现该方法时,JAX-WS运行时系统负责选择协议绑定(和端口)并相应地配置代理。 
           返回的代理不应由客户机重新配置。 
          serviceEndpointInterface - 服务端点接口 
           WebServiceException - 
            serviceEndpointInterface指定 public abstract <T> T getPort(类<T> serviceEndpointInterface, WebServiceFeature... features)
getPort方法返回代理。 
           参数serviceEndpointInterface指定返回的代理支持的服务端点接口。 
           在实现该方法时,JAX-WS运行时系统负责选择协议绑定(和端口)并相应地配置代理。 
           返回的代理不应由客户机重新配置。 
          serviceEndpointInterface - 服务端点接口 
           features -数组WebServiceFeatures配置上的代理。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 
            serviceEndpointInterface指定 WebServiceFeature 
           public abstract void addPort(QName portName, String bindingId, String endpointAddress)
Dispatch实例。 
          portName - 目标服务端点的合格名称 
           bindingId - 绑定的URI标识符。 
           endpointAddress - 作为URI的目标服务端点的地址 
           WebServiceException - 如果端口创建有任何错误 
           SOAPBinding.SOAP11HTTP_BINDING , 
            SOAPBinding.SOAP12HTTP_BINDING , 
            HTTPBinding.HTTP_BINDING 
           public abstract <T> Dispatch<T> createDispatch(QName portName, 类<T> type, Service.Mode mode)
Dispatch实例,供用户选择的对象使用。 
          portName - 目标服务端点的合格名称 
           type - 用于消息或消息有效载荷的对象类。 
            需要实现支持javax.xml.transform.Source和javax.xml.soap.SOAPMessage 。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
            模式必须MESSAGE当类型是SOAPMessage 。 
           WebServiceException - 如果在创建 
            Dispatch对象时有任何错误 
           Source , SOAPMessage 
           public abstract <T> Dispatch<T> createDispatch(QName portName, 类<T> type, Service.Mode mode, WebServiceFeature... features)
Dispatch实例。 
          portName - 目标服务端点的合格名称 
           type - 用于消息或消息有效载荷的对象类。 
            需要实施支持javax.xml.transform.Source和javax.xml.soap.SOAPMessage 。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
            模式必须MESSAGE当类型是SOAPMessage 。 
           features - 要在代理上配置的WebServiceFeatures的列表。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 如果在创建 
            Dispatch对象时出现任何错误,或启用了与该端口不兼容或不支持的功能。 
           Source , SOAPMessage , WebServiceFeature 
           public abstract <T> Dispatch<T> createDispatch(EndpointReference endpointReference, 类<T> type, Service.Mode mode, WebServiceFeature... features)
Dispatch实例,供用户选择的对象使用。 
           如果有在任何参考参数endpointReference ,则这些参考参数必须显示为SOAP标头,指示它们是参照参数,对发送到端点的所有消息。 
           endpointReference's地址必须用于端点上的调用。 
           在实现此方法时,JAX-WS运行时系统负责选择协议绑定(和端口),并从与此Service实例相关联的WSDL或从Service的元数据相应地endpointReference 。 
           如果此Service实例具有WSDL,并且endpointReference在其元数据中也具有WSDL,则必须使用此实例的WSDL。 
           如果这个Service实例没有WSDL,并且endpointReference确实有一个WSDL,那么可以使用endpointReference的WSDL。 
           一个实现必须能够检索portName从endpointReference元。 
           此方法的行为与调用相同
  dispatch = service.createDispatch(portName, type, mode, features);  
           其中portName从WSDL或检索EndpointReference元数据。 
          endpointReference -该 
            EndpointReference用于将由返回调用的目标服务端点 
            Dispatch对象。 
           type - 用于消息或消息有效载荷的对象类。 
            需要实施支持javax.xml.transform.Source和javax.xml.soap.SOAPMessage 。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
            模式必须MESSAGE当类型是SOAPMessage 。 
           features -数组WebServiceFeatures配置上的代理。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 
            endpointReference元数据与与此Service实例相关portName的WSDL的serviceName或portName不匹配。 portName不能从EndpointReference元数据确定。 Dispatch对象。 Source , SOAPMessage , WebServiceFeature 
           public abstract Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode)
Dispatch实例。 
          portName - 目标服务端点的合格名称 
           context - 用于编组和解组消息或消息有效载荷的JAXB上下文。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
           WebServiceException - 如果在创建 
            Dispatch对象时有任何错误 
           JAXBContext 
           public abstract Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
Dispatch实例。 
          portName - 目标服务端点的合格名称 
           context - 用于编组和解组消息或消息有效载荷的JAXB上下文。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
           features - 要在代理上配置的WebServiceFeatures的列表。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 如果创建 
            Dispatch对象时出现任何错误,或启用了与该端口不兼容或不支持的功能。 
           JAXBContext , WebServiceFeature 
           public abstract Dispatch<Object> createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
Dispatch实例。 
           如果有在任何参考参数endpointReference ,则这些参考参数必须显示为SOAP标头,指示它们是参照参数,对发送到端点的所有消息。 
           endpointReference's地址必须用于端点上的调用。 
           在实现此方法时,JAX-WS运行时系统负责选择协议绑定(和端口),并从与此Service实例相关联的WSDL或从Service的元数据相应地endpointReference 。 
           如果此Service实例具有WSDL,并且endpointReference在其元数据中也具有WSDL,则必须使用此实例的WSDL。 
           如果此Service实例没有WSDL,并且endpointReference确实有一个WSDL,则可以使用endpointReference的WSDL。 
           一个实现必须能够检索portName从endpointReference元。 
           此方法与调用相同
  dispatch = service.createDispatch(portName, context, mode, features);  
           其中portName是从WSDL或endpointReference元数据endpointReference 。 
          endpointReference -该 
            EndpointReference用于将由返回调用的目标服务端点 
            Dispatch对象。 
           context - 用于编组和解组消息或消息有效载荷的JAXB上下文。 
           mode - 控制创建的调度实例是消息还是有效负载,即用户是否使用完整的协议消息或消息有效载荷。 
            例如,当使用SOAP协议时,此参数控制用户是否使用SOAP消息或SOAP主体的内容。 
           features - 要在代理上配置的WebServiceFeatures数组。 
            支持的功能不是在features参数将其默认值。 
           WebServiceException - 
            endpointReference元数据与与此Service实例相关portName的WSDL的serviceName或portName不匹配。 portName不能从EndpointReference元数据确定。 Dispatch对象。 JAXBContext , WebServiceFeature 
           public abstract QName getServiceName()
public abstract Iterator<QName> getPorts()
Iterator的 
           QName s服务端点列表 
           QName服务分组 
          java.util.Iterator ,元素类型为 
            javax.xml.namespace.QName 
           WebServiceException - 如果此Service类无法访问所需的WSDL元数据 
           public abstract URL getWSDLDocumentLocation()
public abstract HandlerResolver getHandlerResolver()
HandlerResolver被这个 
            Service实例使用,如果没有一个 
            null 。 
           public abstract void setHandlerResolver(HandlerResolver handlerResolver)
HandlerResolver这个Service实例。 
           处理程序解析器(如果存在)将为创建的每个代理或分派实例调用一次,并且解析器返回的处理程序链将在实例上设置。
handlerResolver -该 
            HandlerResolver用于所有随后创建的代理/调度对象。 
           HandlerResolver 
           public abstract Executor getExecutor()
Service实例的执行程序。 
           执行器用于需要回调的所有异步调用。 
          java.util.concurrent.Executor用于调用回调。 
           Executor 
           public abstract void setExecutor(Executor executor)
Service实例的执行程序。 
           执行器用于需要回调的所有异步调用。 
          executor - 用于调用回调的 
            java.util.concurrent.Executor 。 
           SecurityException - 如果实例不支持以安全原因设置执行程序(例如缺少必需的权限)。 
           Executor 
            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.