Package com.sun.xml.ws.client
Class WSServiceDelegate
- java.lang.Object
-
- jakarta.xml.ws.spi.ServiceDelegate
-
- com.sun.xml.ws.api.WSService
-
- com.sun.xml.ws.client.WSServiceDelegate
-
- All Implemented Interfaces:
Component,ComponentRegistry
public class WSServiceDelegate extends WSService
Serviceobjects provide the client view of a Web service.Serviceacts as a factory of the following:- Proxies for a target service endpoint.
- Instances of
jakarta.xml.ws.Dispatchfor dynamic message-oriented invocation of a remote operation.
The ports available on a service can be enumerated using the
getPortsmethod. Alternatively, you can pass a service endpoint interface to the unarygetPortmethod and let the runtime select a compatible port.Handler chains for all the objects created by a
Servicecan be set by means of the providedHandlerRegistry.An
Executormay 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 aThreadPoolExecutorand registering it with the service.- Since:
- JAX-WS 2.0
- Author:
- WS Development Team
- See Also:
Executor
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.sun.xml.ws.api.WSService
WSService.InitParams
-
-
Field Summary
Fields Modifier and Type Field Description protected static jakarta.xml.ws.WebServiceFeature[]EMPTY_FEATURES-
Fields inherited from class com.sun.xml.ws.api.WSService
EMPTY_PARAMS, INIT_PARAMS
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedWSServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)WSServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)WSServiceDelegate(Source wsdl, WSDLService service, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)WSServiceDelegate(Source wsdl, WSDLService service, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)protectedWSServiceDelegate(Source wsdl, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)WSServiceDelegate(Source wsdl, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPort(QName portName, String bindingId, String endpointAddress)SEIModelbuildRuntimeModel(QName serviceName, QName portName, Class portInterface, WSDLPort wsdlPort, WebServiceFeatureList features)protected EntityResolvercreateCatalogResolver()jakarta.xml.ws.Dispatch<Object>createDispatch(jakarta.xml.ws.EndpointReference endpointReference, jakarta.xml.bind.JAXBContext context, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)<T> jakarta.xml.ws.Dispatch<T>createDispatch(jakarta.xml.ws.EndpointReference endpointReference, Class<T> type, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)protected jakarta.xml.ws.Dispatch<Object>createDispatch(QName portName, WSEndpointReference wsepr, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)jakarta.xml.ws.Dispatch<Object>createDispatch(QName portName, WSEndpointReference wsepr, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)Works likeServiceDelegate.createDispatch(jakarta.xml.ws.EndpointReference, jakarta.xml.bind.JAXBContext, jakarta.xml.ws.Service.Mode, jakarta.xml.ws.WebServiceFeature[])but it takes the port name separately, so that EPR without embedded metadata can be used.<T> jakarta.xml.ws.Dispatch<T>createDispatch(QName portName, WSEndpointReference wsepr, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)<T> jakarta.xml.ws.Dispatch<T>createDispatch(QName portName, WSEndpointReference wsepr, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)Works likeServiceDelegate.createDispatch(jakarta.xml.ws.EndpointReference, java.lang.Class, jakarta.xml.ws.Service.Mode, jakarta.xml.ws.WebServiceFeature[])but it takes the port name separately, so that EPR without embedded metadata can be used.jakarta.xml.ws.Dispatch<Object>createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode)protected jakarta.xml.ws.Dispatch<Object>createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)jakarta.xml.ws.Dispatch<Object>createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... webServiceFeatures)<T> jakarta.xml.ws.Dispatch<T>createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode)<T> jakarta.xml.ws.Dispatch<T>createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)<T> jakarta.xml.ws.Dispatch<T>createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)ContainergetContainer()Gets theContainerobject.EndpointAddressgetEndpointAddress(QName qName)ExecutorgetExecutor()jakarta.xml.ws.handler.HandlerResolvergetHandlerResolver()<T> TgetPort(WSEndpointReference wsepr, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)Works likeServiceDelegate.getPort(EndpointReference, Class, WebServiceFeature...)but takesWSEndpointReference.protected <T> TgetPort(WSEndpointReference wsepr, QName portName, Class<T> portInterface, WebServiceFeatureList features)<T> TgetPort(jakarta.xml.ws.EndpointReference epr, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)<T> TgetPort(Class<T> portInterface)<T> TgetPort(Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)<T> TgetPort(QName portName, Class<T> portInterface)<T> TgetPort(QName portName, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)WSDLPortgetPortModel(WSDLService wsdlService, QName portName)Obtains aWSDLPortImplwith error check.Iterator<QName>getPorts()protected Map<QName,PortInfo>getQNameToPortInfoMap()ClassgetServiceClass()QNamegetServiceName()protected InvocationHandlergetStubHandler(BindingImpl binding, SEIPortInfo eif, WSEndpointReference epr)URLgetWSDLDocumentLocation()WSDLServicegetWsdlService()PortInfosafeGetPort(QName portName)ObtainsPortInfofor the given name, with error check.voidsetExecutor(Executor executor)voidsetHandlerResolver(jakarta.xml.ws.handler.HandlerResolver resolver)
-
-
-
Constructor Detail
-
WSServiceDelegate
public WSServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)
-
WSServiceDelegate
protected WSServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)
-
WSServiceDelegate
public WSServiceDelegate(@Nullable Source wsdl, @NotNull QName serviceName, @NotNull Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)
- Parameters:
serviceClass- EitherService.class or other generated service-derived classes.
-
WSServiceDelegate
protected WSServiceDelegate(@Nullable Source wsdl, @NotNull QName serviceName, @NotNull Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)
- Parameters:
serviceClass- EitherService.class or other generated service-derived classes.
-
WSServiceDelegate
public WSServiceDelegate(@Nullable Source wsdl, @Nullable WSDLService service, @NotNull QName serviceName, @NotNull Class<? extends jakarta.xml.ws.Service> serviceClass, jakarta.xml.ws.WebServiceFeature... features)
- Parameters:
serviceClass- EitherService.class or other generated service-derived classes.
-
WSServiceDelegate
public WSServiceDelegate(@Nullable Source wsdl, @Nullable WSDLService service, @NotNull QName serviceName, @NotNull Class<? extends jakarta.xml.ws.Service> serviceClass, WebServiceFeatureList features)
- Parameters:
serviceClass- EitherService.class or other generated service-derived classes.
-
-
Method Detail
-
createCatalogResolver
protected EntityResolver createCatalogResolver()
-
getExecutor
public Executor getExecutor()
- Specified by:
getExecutorin classjakarta.xml.ws.spi.ServiceDelegate
-
setExecutor
public void setExecutor(Executor executor)
- Specified by:
setExecutorin classjakarta.xml.ws.spi.ServiceDelegate
-
getHandlerResolver
public jakarta.xml.ws.handler.HandlerResolver getHandlerResolver()
- Specified by:
getHandlerResolverin classjakarta.xml.ws.spi.ServiceDelegate
-
setHandlerResolver
public void setHandlerResolver(jakarta.xml.ws.handler.HandlerResolver resolver)
- Specified by:
setHandlerResolverin classjakarta.xml.ws.spi.ServiceDelegate
-
getPort
public <T> T getPort(QName portName, Class<T> portInterface) throws jakarta.xml.ws.WebServiceException
- Specified by:
getPortin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
getPort
public <T> T getPort(QName portName, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)
- Specified by:
getPortin classjakarta.xml.ws.spi.ServiceDelegate
-
getPort
public <T> T getPort(jakarta.xml.ws.EndpointReference epr, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)- Specified by:
getPortin classjakarta.xml.ws.spi.ServiceDelegate
-
getPort
public <T> T getPort(WSEndpointReference wsepr, Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)
Description copied from class:WSServiceWorks likeServiceDelegate.getPort(EndpointReference, Class, WebServiceFeature...)but takesWSEndpointReference.
-
getPort
protected <T> T getPort(WSEndpointReference wsepr, QName portName, Class<T> portInterface, WebServiceFeatureList features)
-
getPort
public <T> T getPort(Class<T> portInterface, jakarta.xml.ws.WebServiceFeature... features)
- Specified by:
getPortin classjakarta.xml.ws.spi.ServiceDelegate
-
getPort
public <T> T getPort(Class<T> portInterface) throws jakarta.xml.ws.WebServiceException
- Specified by:
getPortin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
addPort
public void addPort(QName portName, String bindingId, String endpointAddress) throws jakarta.xml.ws.WebServiceException
- Specified by:
addPortin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode) throws jakarta.xml.ws.WebServiceException
- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(QName portName, WSEndpointReference wsepr, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)
Description copied from class:WSServiceWorks likeServiceDelegate.createDispatch(jakarta.xml.ws.EndpointReference, java.lang.Class, jakarta.xml.ws.Service.Mode, jakarta.xml.ws.WebServiceFeature[])but it takes the port name separately, so that EPR without embedded metadata can be used.- Specified by:
createDispatchin classWSService
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(QName portName, WSEndpointReference wsepr, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)
- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(QName portName, Class<T> aClass, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)
-
createDispatch
public <T> jakarta.xml.ws.Dispatch<T> createDispatch(jakarta.xml.ws.EndpointReference endpointReference, Class<T> type, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate
-
safeGetPort
@NotNull public PortInfo safeGetPort(QName portName)
ObtainsPortInfofor the given name, with error check.
-
getEndpointAddress
public EndpointAddress getEndpointAddress(QName qName)
-
createDispatch
public jakarta.xml.ws.Dispatch<Object> createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode) throws jakarta.xml.ws.WebServiceException
- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
createDispatch
public jakarta.xml.ws.Dispatch<Object> createDispatch(QName portName, WSEndpointReference wsepr, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)
Description copied from class:WSServiceWorks likeServiceDelegate.createDispatch(jakarta.xml.ws.EndpointReference, jakarta.xml.bind.JAXBContext, jakarta.xml.ws.Service.Mode, jakarta.xml.ws.WebServiceFeature[])but it takes the port name separately, so that EPR without embedded metadata can be used.- Specified by:
createDispatchin classWSService
-
createDispatch
protected jakarta.xml.ws.Dispatch<Object> createDispatch(QName portName, WSEndpointReference wsepr, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)
-
getContainer
@NotNull public Container getContainer()
Description copied from class:WSServiceGets theContainerobject.The components inside
WSEndpointuses this reference to communicate with the hosting environment.- Specified by:
getContainerin classWSService- Returns:
- always same object. If no "real"
Containerinstance is given,Container.NONEwill be returned.
-
createDispatch
public jakarta.xml.ws.Dispatch<Object> createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... webServiceFeatures)
- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate
-
createDispatch
protected jakarta.xml.ws.Dispatch<Object> createDispatch(QName portName, jakarta.xml.bind.JAXBContext jaxbContext, jakarta.xml.ws.Service.Mode mode, WebServiceFeatureList features)
-
createDispatch
public jakarta.xml.ws.Dispatch<Object> createDispatch(jakarta.xml.ws.EndpointReference endpointReference, jakarta.xml.bind.JAXBContext context, jakarta.xml.ws.Service.Mode mode, jakarta.xml.ws.WebServiceFeature... features)
- Specified by:
createDispatchin classjakarta.xml.ws.spi.ServiceDelegate
-
getServiceName
public QName getServiceName()
- Specified by:
getServiceNamein classjakarta.xml.ws.spi.ServiceDelegate
-
getServiceClass
public Class getServiceClass()
-
getPorts
public Iterator<QName> getPorts() throws jakarta.xml.ws.WebServiceException
- Specified by:
getPortsin classjakarta.xml.ws.spi.ServiceDelegate- Throws:
jakarta.xml.ws.WebServiceException
-
getWSDLDocumentLocation
public URL getWSDLDocumentLocation()
- Specified by:
getWSDLDocumentLocationin classjakarta.xml.ws.spi.ServiceDelegate
-
getStubHandler
protected InvocationHandler getStubHandler(BindingImpl binding, SEIPortInfo eif, @Nullable WSEndpointReference epr)
-
getPortModel
@NotNull public WSDLPort getPortModel(WSDLService wsdlService, QName portName)
Obtains aWSDLPortImplwith error check.- Returns:
- guaranteed to be non-null.
-
buildRuntimeModel
public SEIModel buildRuntimeModel(QName serviceName, QName portName, Class portInterface, WSDLPort wsdlPort, WebServiceFeatureList features)
-
getWsdlService
public WSDLService getWsdlService()
-
-