|
Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjavax.xml.ws.Service
public class Service
Service objects provide the client view of a Web service.
Service acts as a factory of the following:
javax.xml.ws.Dispatch for
dynamic message-oriented invocation of a remote
operation.
The ports available on a service can be enumerated using the
getPorts method. Alternatively, you can pass a
service endpoint interface to the unary getPort method
and let the runtime select a compatible port.
Handler chains for all the objects created by a Service
can be set by means of a HandlerResolver.
An Executor may be set on the service in order
to gain better control over the threads used to dispatch asynchronous
callbacks. For instance, thread pooling with certain parameters
can be enabled by creating a ThreadPoolExecutor and
registering it with the service.
Provider,
HandlerResolver,
Executor| Nested Class Summary | |
|---|---|
static class |
Service.Mode
The orientation of a dynamic client or service. |
| Constructor Summary | |
|---|---|
protected |
Service(URL wsdlDocumentLocation,
QName serviceName)
|
| Method Summary | ||
|---|---|---|
void |
addPort(QName portName,
String bindingId,
String endpointAddress)
Creates a new port for the service. |
|
static Service |
create(QName serviceName)
Create a Service instance. |
|
static Service |
create(URL wsdlDocumentLocation,
QName serviceName)
Create a Service instance. |
|
|
createDispatch(QName portName,
Class<T> type,
Service.Mode mode)
Creates a Dispatch instance for use with objects of
the users choosing. |
|
Dispatch<Object> |
createDispatch(QName portName,
JAXBContext context,
Service.Mode mode)
Creates a Dispatch instance for use with JAXB
generated objects. |
|
Executor |
getExecutor()
Returns the executor for this Serviceinstance. |
|
HandlerResolver |
getHandlerResolver()
Returns the configured handler resolver. |
|
|
getPort(Class<T> serviceEndpointInterface)
The getPort method returns a stub. |
|
|
getPort(QName portName,
Class<T> serviceEndpointInterface)
The getPort method returns a stub. |
|
Iterator<QName> |
getPorts()
Returns an Iterator for the list of
QNames of service endpoints grouped by this
service |
|
QName |
getServiceName()
Gets the name of this service. |
|
URL |
getWSDLDocumentLocation()
Gets the location of the WSDL document for this Service. |
|
void |
setExecutor(Executor executor)
Sets the executor for this Service instance. |
|
void |
setHandlerResolver(HandlerResolver handlerResolver)
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 |
|---|
protected Service(URL wsdlDocumentLocation,
QName serviceName)
| Method Detail |
|---|
public <T> T getPort(QName portName,
Class<T> serviceEndpointInterface)
serviceEndpointInterface
specifies the service endpoint interface that is supported by
the created dynamic proxy or stub instance.
portName - Qualified name of the service endpoint in
the WSDL service descriptionserviceEndpointInterface - Service endpoint interface
supported by the dynamic proxy or stub
instance
WebServiceException - This exception is thrown in the
following cases:
serviceEndpointInterface
or portName is specified
Proxy,
InvocationHandlerpublic <T> T getPort(Class<T> serviceEndpointInterface)
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 interface
WebServiceException - serviceEndpointInterface
is specified
public void addPort(QName portName,
String bindingId,
String endpointAddress)
Dispatchinstances.
portName - Qualified name for the target service endpointbindingId - A String identifier of a binding.endpointAddress - Address of the target service endpoint as a URI
WebServiceException - If any error in the creation of
the portSOAPBinding.SOAP11HTTP_BINDING,
SOAPBinding.SOAP12HTTP_BINDING,
HTTPBinding.HTTP_BINDING
public <T> Dispatch<T> createDispatch(QName portName,
Class<T> type,
Service.Mode mode)
Dispatch instance for use with objects of
the users choosing.
portName - Qualified name for the target service endpointtype - 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.
WebServiceException - If any error in the creation of
the Dispatch objectSource,
SOAPMessage
public 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.
ServiceException - If any error in the creation of
the Dispatch objectJAXBContextpublic QName getServiceName()
public Iterator<QName> getPorts()
Iterator for the list of
QNames of service endpoints grouped by this
service
java.util.Iterator with elements
of type javax.xml.namespace.QName
WebServiceException - If this Service class does not
have access to the required WSDL metadatapublic URL getWSDLDocumentLocation()
public HandlerResolver getHandlerResolver()
HandlerResolver being
used by this Service instance, or null
if there isn't one.public 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 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 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
public static Service create(URL wsdlDocumentLocation,
QName serviceName)
Service instance.
The specified WSDL document location and service qualified name must
uniquely identify a wsdl:service element.
wsdlDocumentLocation - URL for the WSDL document location
for the serviceserviceName - QName for the service
WebServiceException - If any error in creation of the
specified servicepublic static Service create(QName serviceName)
Service instance.
serviceName - QName for the service
WebServiceException - If any error in creation of the
specified service
|
Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved.