public abstract class ServiceDelegate extends Object
Service objects
 to allow pluggability of JAX-WS implementations.
 
 Every Service object has its own delegate, created using
 the Provider.createServiceDelegate(java.net.URL, javax.xml.namespace.QName, java.lang.Class<? extends javax.xml.ws.Service>) method. A Service
 object delegates all of its instance methods to its delegate.
| Modifier | Constructor and Description | 
|---|---|
| protected  | ServiceDelegate() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract void | addPort(QName portName,
       String bindingId,
       String endpointAddress)Creates a new port for the service. | 
| abstract <T> Dispatch<T> | createDispatch(EndpointReference endpointReference,
              Class<T> type,
              Service.Mode mode,
              WebServiceFeature... features)Creates a  Dispatchinstance for use with objects of
 the user's choosing. | 
| abstract Dispatch<Object> | createDispatch(EndpointReference endpointReference,
              JAXBContext context,
              Service.Mode mode,
              WebServiceFeature... features)Creates a  Dispatchinstance for use with JAXB
 generated objects. | 
| abstract <T> Dispatch<T> | createDispatch(QName portName,
              Class<T> type,
              Service.Mode mode)Creates a  Dispatchinstance for use with objects of
 the user's choosing. | 
| abstract <T> Dispatch<T> | createDispatch(QName portName,
              Class<T> type,
              Service.Mode mode,
              WebServiceFeature... features)Creates a  Dispatchinstance for use with objects of
 the user's choosing. | 
| abstract Dispatch<Object> | createDispatch(QName portName,
              JAXBContext context,
              Service.Mode mode)Creates a  Dispatchinstance for use with JAXB
 generated objects. | 
| abstract Dispatch<Object> | createDispatch(QName portName,
              JAXBContext context,
              Service.Mode mode,
              WebServiceFeature... features)Creates a  Dispatchinstance for use with JAXB
 generated objects. | 
| abstract Executor | getExecutor()Returns the executor for this  Serviceinstance. | 
| abstract HandlerResolver | getHandlerResolver()Returns the configured handler resolver. | 
| abstract <T> T | getPort(Class<T> serviceEndpointInterface)The  getPortmethod returns a proxy. | 
| abstract <T> T | getPort(Class<T> serviceEndpointInterface,
       WebServiceFeature... features)The  getPortmethod returns a proxy. | 
| abstract <T> T | getPort(EndpointReference endpointReference,
       Class<T> serviceEndpointInterface,
       WebServiceFeature... features)The  getPortmethod returns a proxy. | 
| abstract <T> T | getPort(QName portName,
       Class<T> serviceEndpointInterface)The  getPortmethod returns a proxy. | 
| abstract <T> T | getPort(QName portName,
       Class<T> serviceEndpointInterface,
       WebServiceFeature... features)The  getPortmethod returns a proxy. | 
| abstract Iterator<QName> | getPorts()Returns an  Iteratorfor the list ofQNames of service endpoints grouped by this
 service | 
| abstract QName | getServiceName()Gets the name of this service. | 
| abstract URL | getWSDLDocumentLocation()Gets the location of the WSDL document for this Service. | 
| abstract void | setExecutor(Executor executor)Sets the executor for this  Serviceinstance. | 
| abstract void | setHandlerResolver(HandlerResolver handlerResolver)Sets the  HandlerResolverfor thisServiceinstance. | 
public abstract <T> T getPort(QName portName, Class<T> serviceEndpointInterface)
getPort method returns a proxy. A service client
 uses this proxy to invoke operations on the target
 service endpoint. The serviceEndpointInterface
 specifies the service endpoint interface that is supported by
 the created dynamic proxy instance.portName - Qualified name of the service endpoint in
                  the WSDL service descriptionserviceEndpointInterface - Service endpoint interface
                  supported by the dynamic proxyWebServiceException - This exception is thrown in the
                  following cases:
                  serviceEndpointInterface
                      or portName is specified
                  Proxy, 
InvocationHandlerpublic abstract <T> T getPort(QName portName, Class<T> serviceEndpointInterface, WebServiceFeature... features)
getPort method returns a proxy. A service client
 uses this proxy to invoke operations on the target
 service endpoint. The serviceEndpointInterface
 specifies the service endpoint interface that is supported by
 the created dynamic proxy instance.portName - Qualified name of the service endpoint in
                  the WSDL service descriptionserviceEndpointInterface - Service endpoint interface
                  supported by the dynamic proxy or instancefeatures - A list of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - This exception is thrown in the
                  following cases:
                  serviceEndpointInterface
                      or portName is specified
                  Proxy, 
InvocationHandler, 
WebServiceFeaturepublic abstract <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features)
getPort method returns a proxy.
 The parameter endpointReference specifies the
 endpoint that will be invoked by the returned proxy.  If there
 are any reference parameters in the
 endpointReference, then those reference
 parameters MUST appear as SOAP headers, indicating them to be
 reference parameters, on all messages sent to the endpoint.
 The endpointReference's address MUST be used
 for invocations on the endpoint.
 The parameter serviceEndpointInterface specifies
 the service endpoint interface that is supported by the
 returned proxy.
 In the implementation of this method, the JAX-WS
 runtime system takes the responsibility of selecting a protocol
 binding (and a port) and configuring the proxy accordingly from
 the WSDL associated with this Service instance or
 from the metadata from the endpointReference.
 If this Service instance has a WSDL and
 the endpointReference metadata
 also has a WSDL, then the WSDL from this instance MUST be used.
 If this Service instance does not have a WSDL and
 the endpointReference does have a WSDL, then the
 WSDL from the endpointReference MAY be used.
 The returned proxy should not be reconfigured by the client.
 If this Service instance has a known proxy
 port that matches the information contained in
 the WSDL,
 then that proxy is returned, otherwise a WebServiceException
 is thrown.
 Calling this method has the same behavior as the following
 port = service.getPort(portName, serviceEndpointInterface);
 
 where the portName is retrieved from the
 metadata of the endpointReference or from the
 serviceEndpointInterface and the WSDL
 associated with this Service instance.endpointReference - The EndpointReference
 for the target service endpoint that will be invoked by the
 returned proxy.serviceEndpointInterface - Service endpoint interface.features - A list of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - endpointReference metadata does
                      not match the serviceName of this
                      Service instance.
                  portName cannot be extracted
                      from the WSDL or endpointReference metadata.
                  endpointReference
                      is specified.
                  serviceEndpointInterface
                      is specified.
                  public abstract <T> T getPort(Class<T> serviceEndpointInterface)
getPort method returns a proxy. The parameter
 serviceEndpointInterface specifies the service
 endpoint interface that is supported by the returned proxy.
 In the implementation of this method, the JAX-WS
 runtime system takes the responsibility of selecting a protocol
 binding (and a port) and configuring the proxy accordingly.
 The returned proxy should not be reconfigured by the client.serviceEndpointInterface - Service endpoint interfaceWebServiceException - serviceEndpointInterface
                      is specified
                  public abstract <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features)
getPort method returns a proxy. The parameter
 serviceEndpointInterface specifies the service
 endpoint interface that is supported by the returned proxy.
 In the implementation of this method, the JAX-WS
 runtime system takes the responsibility of selecting a protocol
 binding (and a port) and configuring the proxy accordingly.
 The returned proxy should not be reconfigured by the client.serviceEndpointInterface - Service endpoint interfacefeatures - An array of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - serviceEndpointInterface
                      is specified
                  WebServiceFeaturepublic abstract void addPort(QName portName, String bindingId, String endpointAddress)
Dispatchinstances.portName - Qualified name for the target service endpointbindingId - A URI identifier of a binding.endpointAddress - Address of the target service endpoint as a URIWebServiceException - If any error in the creation of
 the portSOAPBinding.SOAP11HTTP_BINDING, 
SOAPBinding.SOAP12HTTP_BINDING, 
HTTPBinding.HTTP_BINDINGpublic abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type, Service.Mode mode)
Dispatch instance for use with objects of
 the user's choosing.portName - Qualified name for the target service endpointtype - The class of object used for messages or message
 payloads. Implementations are required to support
 javax.xml.transform.Source and javax.xml.soap.SOAPMessage.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
 when type is SOAPMessage.WebServiceException - If any error in the creation of
                  the Dispatch objectSource, 
SOAPMessagepublic abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type, Service.Mode mode, WebServiceFeature... features)
Dispatch instance for use with objects of
 the user's choosing.portName - Qualified name for the target service endpointtype - The class of object used for messages or message
 payloads. Implementations are required to support
 javax.xml.transform.Source and javax.xml.soap.SOAPMessage.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
 when type is SOAPMessage.features - A list of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - If any error in the creation of
                  the Dispatch object or if a
                  feature is enabled that is not compatible with
                  this port or is unsupported.Source, 
SOAPMessage, 
WebServiceFeaturepublic abstract <T> Dispatch<T> createDispatch(EndpointReference endpointReference, Class<T> type, Service.Mode mode, WebServiceFeature... features)
Dispatch instance for use with objects of
 the user's choosing. If there
 are any reference parameters in the
 endpointReference, then those reference
 parameters MUST appear as SOAP headers, indicating them to be
 reference parameters, on all messages sent to the endpoint.
 The endpointReference's address MUST be used
 for invocations on the endpoint.
 In the implementation of this method, the JAX-WS
 runtime system takes the responsibility of selecting a protocol
 binding (and a port) and configuring the dispatch accordingly from
 the WSDL associated with this Service instance or
 from the metadata from the endpointReference.
 If this Service instance has a WSDL and
 the endpointReference
 also has a WSDL in its metadata, then the WSDL from this instance MUST be used.
 If this Service instance does not have a WSDL and
 the endpointReference does have a WSDL, then the
 WSDL from the endpointReference MAY be used.
 An implementation MUST be able to retrieve the portName from the
 endpointReference metadata.
 This method behaves the same as calling
 dispatch = service.createDispatch(portName, type, mode, features);
 
 where the portName is retrieved from the
 WSDL or EndpointReference metadata.endpointReference - The EndpointReference
 for the target service endpoint that will be invoked by the
 returned Dispatch object.type - The class of object used to messages or message
 payloads. Implementations are required to support
 javax.xml.transform.Source and javax.xml.soap.SOAPMessage.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body. Mode MUST be MESSAGE
 when type is SOAPMessage.features - An array of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - endpointReference metadata does
                      not match the serviceName or portName
                      of a WSDL associated
                      with this Service instance.
                    portName cannot be determined
                    from the EndpointReference metadata.
                    Dispatch object.
                    Source, 
SOAPMessage, 
WebServiceFeaturepublic abstract Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode)
Dispatch instance for use with JAXB
 generated objects.portName - Qualified name for the target service endpointcontext - The JAXB context used to marshall and unmarshall
 messages or message payloads.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body.WebServiceException - If any error in the creation of
                  the Dispatch objectJAXBContextpublic abstract Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
Dispatch instance for use with JAXB
 generated objects.portName - Qualified name for the target service endpointcontext - The JAXB context used to marshall and unmarshall
 messages or message payloads.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body.features - A list of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - If any error in the creation of
                  the Dispatch object or if a
                  feature is enabled that is not compatible with
                  this port or is unsupported.JAXBContext, 
WebServiceFeaturepublic abstract Dispatch<Object> createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features)
Dispatch instance for use with JAXB
 generated objects. If there
 are any reference parameters in the
 endpointReference, then those reference
 parameters MUST appear as SOAP headers, indicating them to be
 reference parameters, on all messages sent to the endpoint.
 The endpointReference's address MUST be used
 for invocations on the endpoint.
 In the implementation of this method, the JAX-WS
 runtime system takes the responsibility of selecting a protocol
 binding (and a port) and configuring the dispatch accordingly from
 the WSDL associated with this Service instance or
 from the metadata from the endpointReference.
 If this Service instance has a WSDL and
 the endpointReference
 also has a WSDL in its metadata, then the WSDL from this instance
 MUST be used.
 If this Service instance does not have a WSDL and
 the endpointReference does have a WSDL, then the
 WSDL from the endpointReference MAY be used.
 An implementation MUST be able to retrieve the portName from the
 endpointReference metadata.
 This method behavies the same as calling
 dispatch = service.createDispatch(portName, context, mode, features);
 
 where the portName is retrieved from the
 WSDL or endpointReference metadata.endpointReference - The EndpointReference
 for the target service endpoint that will be invoked by the
 returned Dispatch object.context - The JAXB context used to marshall and unmarshall
 messages or message payloads.mode - Controls whether the created dispatch instance is message
 or payload oriented, i.e. whether the user will work with complete
 protocol messages or message payloads. E.g. when using the SOAP
 protocol, this parameter controls whether the user will work with
 SOAP messages or the contents of a SOAP body.features - An array of WebServiceFeatures to configure on the
                proxy.  Supported features not in the features
                 parameter will have their default values.WebServiceException - endpointReference metadata does
                    not match the serviceName or portName
                    of a WSDL associated
                    with this Service instance.
                    portName cannot be determined
                    from the EndpointReference metadata.
                    Dispatch object.
                    JAXBContext, 
WebServiceFeaturepublic abstract QName getServiceName()
public abstract Iterator<QName> getPorts()
Iterator for the list of
 QNames of service endpoints grouped by this
 servicejava.util.Iterator with elements
         of type javax.xml.namespace.QNameWebServiceException - If this Service class does not
         have access to the required WSDL metadatapublic abstract URL getWSDLDocumentLocation()
public abstract HandlerResolver getHandlerResolver()
HandlerResolver being
         used by this Service instance, or null
         if there isn't one.public abstract void setHandlerResolver(HandlerResolver handlerResolver)
HandlerResolver for this Service
 instance.
 The handler resolver, if present, will be called once for each proxy or dispatch instance that is created, and the handler chain returned by the resolver will be set on the instance.
handlerResolver - The HandlerResolver to use
        for all subsequently created proxy/dispatch objects.HandlerResolverpublic abstract Executor getExecutor()
Serviceinstance.
 The executor is used for all asynchronous invocations that
 require callbacks.java.util.concurrent.Executor to be
         used to invoke a callback.Executorpublic abstract void setExecutor(Executor executor)
Service instance.
 The executor is used for all asynchronous invocations that
 require callbacks.executor - The java.util.concurrent.Executor
        to be used to invoke a callback.SecurityException - If the instance does not support
         setting an executor for security reasons (e.g. the
         necessary permissions are missing).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, 2017, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.