You are on page 1of 12

ServiceDelegate (Java Platform SE 7 )

Overview Package

Class

Prev Class Next Class

https://docs.oracle.com/javase/7/docs/api/javax/...

Use Tree Deprecated Index Help


Frames No Frames

Summary: Nested | Field | Constr | Method

Java Platform
Standard Ed. 7

All Classes

Detail: Field | Constr | Method

javax.xml.ws.spi

Class ServiceDelegate
java.lang.Object
javax.xml.ws.spi.ServiceDelegate

public abstract class ServiceDelegate


extends Object

Service delegates are used internally by 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.

Since:
JAX-WS 2.0

See Also:
Service, Provider

Constructor Summary
Constructors
Modifier

Constructor and Description

protected

ServiceDelegate()

Method Summary
Methods
Modifier and Type

Method and Description

abstract void

addPort(QNameportName, StringbindingId,
StringendpointAddress)

Creates a new port for the service.


abstract <T>Dispatch<T>

createDispatch(EndpointReferenceendpointReference,
Class<T>type, Service.Modemode,
WebServiceFeature...features)

Creates a Dispatch instance for use with objects of the user's choosing.
abstract Dispatch<Object> createDispatch(EndpointReferenceendpointReference,
JAXBContextcontext, Service.Modemode,
WebServiceFeature...features)

Creates a Dispatch instance for use with JAXB generated objects.

1 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

abstract <T>Dispatch<T>

https://docs.oracle.com/javase/7/docs/api/javax/...

createDispatch(QNameportName, Class<T>type,
Service.Modemode)

Creates a Dispatch instance for use with objects of the user's choosing.
abstract <T>Dispatch<T>

createDispatch(QNameportName, Class<T>type,
Service.Modemode, WebServiceFeature...features)

Creates a Dispatch instance for use with objects of the user's choosing.
abstract Dispatch<Object> createDispatch(QNameportName, JAXBContextcontext,
Service.Modemode)

Creates a Dispatch instance for use with JAXB generated objects.


abstract Dispatch<Object> createDispatch(QNameportName, JAXBContextcontext,
Service.Modemode, WebServiceFeature...features)

Creates a Dispatch instance 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 getPort method returns a proxy.


abstract <T>T

getPort(Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The getPort method returns a proxy.


abstract <T>T

getPort(EndpointReferenceendpointReference,
Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The getPort method returns a proxy.


abstract <T>T

getPort(QNameportName, Class<T>serviceEndpointInterface)

The getPort method returns a proxy.


abstract <T>T

getPort(QNameportName, Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The getPort method returns a proxy.


abstract Iterator<QName>

getPorts()

Returns an Iterator for the list of QNames 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(Executorexecutor)

Sets the executor for this Service instance.


abstract void

setHandlerResolver(HandlerResolverhandlerResolver)

Sets the HandlerResolver for this Service instance.

Methods inherited from class java.lang.Object


clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait,
wait

Constructor Detail
ServiceDelegate

2 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

protectedServiceDelegate()

Method Detail
getPort
public abstract<T>TgetPort(QNameportName,
Class<T>serviceEndpointInterface)

The 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.

Parameters:
portName - Qualified name of the service endpoint in the WSDL service description
serviceEndpointInterface - Service endpoint interface supported by the dynamic proxy

Returns:
Object Proxy instance that supports the specified service endpoint interface

Throws:
WebServiceException - This exception is thrown in the following cases:

If there is an error in creation of the proxy


If there is any missing WSDL metadata as required by this method
If an illegal serviceEndpointInterface or portName is specified

See Also:
Proxy, InvocationHandler

getPort
public abstract<T>TgetPort(QNameportName,
Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The 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.

Parameters:
portName - Qualified name of the service endpoint in the WSDL service description
serviceEndpointInterface - Service endpoint interface supported by the dynamic proxy or instance
features - A list of WebServiceFeatures to configure on the proxy. Supported features not in the
features parameter will have their default values.

Returns:
Object Proxy instance that supports the specified service endpoint interface

Throws:
WebServiceException - This exception is thrown in the following cases:

3 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

If there is an error in creation of the proxy


If there is any missing WSDL metadata as required by this method
If an illegal serviceEndpointInterface or portName is specified
If a feature is enabled that is not compatible with this port or is unsupported.

Since:
JAX-WS 2.1

See Also:
Proxy, InvocationHandler, WebServiceFeature

getPort
public abstract<T>TgetPort(EndpointReferenceendpointReference,
Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The 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.

Parameters:
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.

Returns:
Object Proxy instance that supports the specified service endpoint interface.

Throws:
WebServiceException -

If there is an error during creation of the proxy.


If there is any missing WSDL metadata as required by this method.
If the endpointReference metadata does not match the serviceName of this Service
instance.
If a portName cannot be extracted from the WSDL or endpointReference metadata.
If an invalid endpointReference is specified.

4 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

If an invalid serviceEndpointInterface is specified.


If a feature is enabled that is not compatible with this port or is unsupported.

Since:
JAX-WS 2.1

getPort
public abstract<T>TgetPort(Class<T>serviceEndpointInterface)

The 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.

Parameters:
serviceEndpointInterface - Service endpoint interface

Returns:
Object instance that supports the specified service endpoint interface

Throws:
WebServiceException -

If there is an error during creation of the proxy


If there is any missing WSDL metadata as required by this method
If an illegal serviceEndpointInterface is specified

getPort
public abstract<T>TgetPort(Class<T>serviceEndpointInterface,
WebServiceFeature...features)

The 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.

Parameters:
serviceEndpointInterface - Service endpoint interface
features - An array of WebServiceFeatures to configure on the proxy. Supported features not in the
features parameter will have their default values.

Returns:
Object instance that supports the specified service endpoint interface

Throws:
WebServiceException -

If there is an error during creation of the proxy


If there is any missing WSDL metadata as required by this method
If an illegal serviceEndpointInterface is specified
If a feature is enabled that is not compatible with this port or is unsupported.

Since:
JAX-WS 2.1

5 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

See Also:
WebServiceFeature

addPort
public abstractvoidaddPort(QNameportName,
StringbindingId,
StringendpointAddress)

Creates a new port for the service. Ports created in this way contain no WSDL port type information and
can only be used for creating Dispatchinstances.

Parameters:
portName - Qualified name for the target service endpoint
bindingId - A URI identifier of a binding.
endpointAddress - Address of the target service endpoint as a URI

Throws:
WebServiceException - If any error in the creation of the port

See Also:
SOAPBinding.SOAP11HTTP_BINDING, SOAPBinding.SOAP12HTTP_BINDING,
HTTPBinding.HTTP_BINDING

createDispatch
public abstract<T>Dispatch<T>createDispatch(QNameportName,
Class<T>type,
Service.Modemode)

Creates a Dispatch instance for use with objects of the user's choosing.

Parameters:
portName - Qualified name for the target service endpoint
type - 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.

Returns:
Dispatch instance

Throws:
WebServiceException - If any error in the creation of the Dispatch object

See Also:
Source, SOAPMessage

6 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

createDispatch
public abstract<T>Dispatch<T>createDispatch(QNameportName,
Class<T>type,
Service.Modemode,
WebServiceFeature...features)

Creates a Dispatch instance for use with objects of the user's choosing.

Parameters:
portName - Qualified name for the target service endpoint
type - 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.

Returns:
Dispatch instance

Throws:
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.

Since:
JAX-WS 2.1

See Also:
Source, SOAPMessage, WebServiceFeature

createDispatch
public abstract<T>Dispatch<T>createDispatch(EndpointReferenceendpointReference,
Class<T>type,
Service.Modemode,
WebServiceFeature...features)

Creates a 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);

7 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

where the portName is retrieved from the WSDL or EndpointReference metadata.

Parameters:
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.

Returns:
Dispatch instance

Throws:
WebServiceException -

If there is any missing WSDL metadata as required by this method.


If the endpointReference metadata does not match the serviceName or portName of a
WSDL associated with this Service instance.
If the portName cannot be determined from the EndpointReference metadata.
If any error in the creation of the Dispatch object.
If a feature is enabled that is not compatible with this port or is unsupported.

Since:
JAX-WS 2.1

See Also:
Source, SOAPMessage, WebServiceFeature

createDispatch
public abstractDispatch<Object>createDispatch(QNameportName,
JAXBContextcontext,
Service.Modemode)

Creates a Dispatch instance for use with JAXB generated objects.

Parameters:
portName - Qualified name for the target service endpoint
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.

Returns:
Dispatch instance

Throws:
WebServiceException - If any error in the creation of the Dispatch object

8 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

See Also:
JAXBContext

createDispatch
public abstractDispatch<Object>createDispatch(QNameportName,
JAXBContextcontext,
Service.Modemode,
WebServiceFeature...features)

Creates a Dispatch instance for use with JAXB generated objects.

Parameters:
portName - Qualified name for the target service endpoint
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 - A list of WebServiceFeatures to configure on the proxy. Supported features not in the
features parameter will have their default values.

Returns:
Dispatch instance

Throws:
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.

Since:
JAX-WS 2.1

See Also:
JAXBContext, WebServiceFeature

createDispatch
public abstractDispatch<Object>createDispatch(EndpointReferenceendpointReference,
JAXBContextcontext,
Service.Modemode,
WebServiceFeature...features)

Creates a 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.

9 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

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.

Parameters:
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.

Returns:
Dispatch instance

Throws:
WebServiceException -

If there is any missing WSDL metadata as required by this method.


If the endpointReference metadata does not match the serviceName or portName of a
WSDL associated with this Service instance.
If the portName cannot be determined from the EndpointReference metadata.
If any error in the creation of the Dispatch object.
if a feature is enabled that is not compatible with this port or is unsupported.

Since:
JAX-WS 2.1

See Also:
JAXBContext, WebServiceFeature

getServiceName
public abstractQNamegetServiceName()

Gets the name of this service.

Returns:
Qualified name of this service

getPorts
public abstractIterator<QName>getPorts()

Returns an Iterator for the list of QNames of service endpoints grouped by this service

Returns:
Returns java.util.Iterator with elements of type javax.xml.namespace.QName

10 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

Throws:
WebServiceException - If this Service class does not have access to the required WSDL metadata

getWSDLDocumentLocation
public abstractURLgetWSDLDocumentLocation()

Gets the location of the WSDL document for this Service.

Returns:
URL for the location of the WSDL document for this service

getHandlerResolver
public abstractHandlerResolvergetHandlerResolver()

Returns the configured handler resolver.

Returns:
HandlerResolver The HandlerResolver being used by this Service instance, or null if there isn't
one.

setHandlerResolver
public abstractvoidsetHandlerResolver(HandlerResolverhandlerResolver)

Sets the 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.

Parameters:
handlerResolver - The HandlerResolver to use for all subsequently created proxy/dispatch objects.

See Also:
HandlerResolver

getExecutor
public abstractExecutorgetExecutor()

Returns the executor for this Serviceinstance. The executor is used for all asynchronous invocations that
require callbacks.

Returns:
The java.util.concurrent.Executor to be used to invoke a callback.

See Also:
Executor

11 de 12

19/07/16 19:24

ServiceDelegate (Java Platform SE 7 )

https://docs.oracle.com/javase/7/docs/api/javax/...

setExecutor
public abstractvoidsetExecutor(Executorexecutor)

Sets the executor for this Service instance. The executor is used for all asynchronous invocations that
require callbacks.

Parameters:
executor - The java.util.concurrent.Executor to be used to invoke a callback.

Throws:
SecurityException - If the instance does not support setting an executor for security reasons (e.g.

the necessary permissions are missing).

See Also:
Executor

Overview Package

Class

Prev Class Next Class

Use Tree Deprecated Index Help


Frames No Frames

Summary: Nested | Field | Constr | Method

Java Platform
Standard Ed. 7

All Classes

Detail: Field | Constr | Method

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, 2016, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see
the documentation redistribution policy.

12 de 12

19/07/16 19:24