public abstract class Provider extends Object
ServiceDelegate and
Endpoint objects.
| Modifier and Type | Field and Description |
|---|---|
static String |
JAXWSPROVIDER_PROPERTY
A constant representing the property used to lookup the name of a
Provider implementation class.
|
| Modifier | Constructor and Description |
|---|---|
protected |
Provider()
Creates a new instance of Provider
|
| Modifier and Type | Method and Description |
|---|---|
abstract Endpoint |
createAndPublishEndpoint(String
Creates and publishes an endpoint object with the specified address and implementation object.
|
Endpoint |
createAndPublishEndpoint(String
Creates and publishes an endpoint object with the specified address, implementation object and web service features.
|
Endpoint |
createEndpoint(String
Creates an endpoint object with the provided binding, implementation class, invoker and web service features.
|
abstract Endpoint |
createEndpoint(String
Creates an endpoint object with the provided binding and implementation object.
|
Endpoint |
createEndpoint(String
Creates an endpoint object with the provided binding, implementation object and web service features.
|
abstract ServiceDelegate |
createServiceDelegate(URL
Creates a service delegate object.
|
ServiceDelegate |
createServiceDelegate(URL
Creates a service delegate object.
|
abstract W3CEndpointReference |
createW3CEndpointReference(String
Factory method to create a
W3CEndpointReference.
|
W3CEndpointReference |
createW3CEndpointReference(String
Factory method to create a
W3CEndpointReference.
|
abstract <T> T |
getPort(EndpointReference
The getPort method returns a proxy.
|
static Provider |
provider()
Creates a new provider object.
|
abstract EndpointReference |
readEndpointReference(Source
read an EndpointReference from the infoset contained in
eprInfoset.
|
public static final StringJAXWSPROVIDER_PROPERTY
Provider implementation class.
public static Providerprovider()
The algorithm used to locate the provider subclass to use consists of the following steps:
META-INF/services/javax.xml.ws.spi.Provider exists, then its first line, if present, is used as the UTF-8 encoded name of the implementation class. java.util.Properties.load(InputStream) method and it contains an entry whose key is javax.xml.ws.spi.Provider, then the value of that entry is used as the name of the implementation class. javax.xml.ws.spi.Provider is defined, then its value is used as the name of the implementation class. public abstract ServiceDelegatecreateServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class <? extends Service > serviceClass)
wsdlDocumentLocation - A URL pointing to the WSDL document for the service, or
null if there isn't one.
serviceName - The qualified name of the service.
serviceClass - The service class, which MUST be either
javax.xml.ws.Service or a subclass thereof.
public ServiceDelegatecreateServiceDelegate(URL wsdlDocumentLocation, QName serviceName, Class <? extends Service > serviceClass, WebServiceFeature ... features)
wsdlDocumentLocation - A URL pointing to the WSDL document for the service, or
null if there isn't one.
serviceName - The qualified name of the service.
serviceClass - The service class, which MUST be either
javax.xml.ws.Service or a subclass thereof.
features - Web Service features that must be configured on the service. If the provider doesn't understand a feature, it must throw a WebServiceException.
public abstract EndpointcreateEndpoint(String bindingId, Object implementor)
bindingId - A URI specifying the desired binding (e.g. SOAP/HTTP)
implementor - A service implementation object to which incoming requests will be dispatched. The corresponding class MUST be annotated with all the necessary Web service annotations.
public abstract EndpointcreateAndPublishEndpoint(String address, Object implementor)
address - A URI specifying the address and transport/protocol to use. A http: URI MUST result in the SOAP 1.1/HTTP binding being used. Implementations may support other URI schemes.
implementor - A service implementation object to which incoming requests will be dispatched. The corresponding class MUST be annotated with all the necessary Web service annotations.
public abstract EndpointReferencereadEndpointReference(Source eprInfoset)
eprInfoset.
eprInfoset - infoset for EndpointReference
EndpointReference unmarshalled from
eprInfoset. This method never returns
null.
WebServiceException - If there is an error creating the
EndpointReference from the specified
eprInfoset.
NullPointerException - If the
null
eprInfoset value is given.
public abstract <T> T getPort(EndpointReferenceendpointReference, Class <T> serviceEndpointInterface, WebServiceFeature ... features)
endpointReference, then those reference parameters MUST appear as SOAP headers, indicating them to be reference parameters, on all messages sent to the endpoint. The parameter
serviceEndpointInterface specifies the service endpoint interface that is supported by the returned proxy. The parameter
endpointReference specifies the endpoint that will be invoked 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 metadata of the
serviceEndpointInterface and the
EndpointReference. For this method to successfully return a proxy, WSDL metadata MUST be available and the
endpointReference MUST contain an implementation understood
serviceName metadata.
endpointReference - the EndpointReference 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 is illegal serviceEndpointInterface is specified WebServiceFeature
public abstract W3CEndpointReferencecreateW3CEndpointReference(String address, QName serviceName, QName portName, List <Element > metadata, String wsdlDocumentLocation, List <Element > referenceParameters)
W3CEndpointReference.
This method can be used to create a W3CEndpointReference for any endpoint by specifying the address property along with any other desired properties. This method can also be used to create a W3CEndpointReference for an endpoint that is published by the same Java EE application. To do so the address property can be provided or this method can automatically determine the address of an endpoint that is published by the same Java EE application and is identified by the serviceName and portName propeties. If the address is null and the serviceName and portName do not identify an endpoint published by the same Java EE application, a javax.lang.IllegalStateException MUST be thrown.
address - Specifies the address of the target endpoint
serviceName - Qualified name of the service in the WSDL.
portName - Qualified name of the endpoint in the WSDL.
metadata - A list of elements that should be added to the
W3CEndpointReference instances
wsa:metadata element.
wsdlDocumentLocation - URL for the WSDL document location for the service.
referenceParameters - Reference parameters to be associated with the returned
EndpointReference instance.
W3CEndpointReference created from
serviceName,
portName,
metadata,
wsdlDocumentLocation and
referenceParameters. This method never returns
null.
IllegalStateException -
address, serviceName and portName are all null. serviceName service is null and the portName is NOT null. address property is null and the serviceName and portName do not specify a valid endpoint published by the same Java EE application. serviceNameis NOT null and is not present in the specified WSDL. portName port is not null and it is not present in serviceName service in the WSDL. wsdlDocumentLocation is NOT null and does not represent a valid WSDL. WebServiceException - If an error occurs while creating the
W3CEndpointReference.
public W3CEndpointReferencecreateW3CEndpointReference(String address, QName interfaceName, QName serviceName, QName portName, List <Element > metadata, String wsdlDocumentLocation, List <Element > referenceParameters, List <Element > elements, Map <QName ,String > attributes)
W3CEndpointReference. Using this method, a
W3CEndpointReference instance can be created with extension elements, and attributes.
Provider implementations must override the default implementation.
This method can be used to create a W3CEndpointReference for any endpoint by specifying the address property along with any other desired properties. This method can also be used to create a W3CEndpointReference for an endpoint that is published by the same Java EE application. To do so the address property can be provided or this method can automatically determine the address of an endpoint that is published by the same Java EE application and is identified by the serviceName and portName propeties. If the address is null and the serviceName and portName do not identify an endpoint published by the same Java EE application, a javax.lang.IllegalStateException MUST be thrown.
address - Specifies the address of the target endpoint
interfaceName - the
wsam:InterfaceName element in the
wsa:Metadata element.
serviceName - Qualified name of the service in the WSDL.
portName - Qualified name of the endpoint in the WSDL.
metadata - A list of elements that should be added to the
W3CEndpointReference instances
wsa:metadata element.
wsdlDocumentLocation - URL for the WSDL document location for the service.
referenceParameters - Reference parameters to be associated with the returned
EndpointReference instance.
elements - extension elements to be associated with the returned
EndpointReference instance.
attributes - extension attributes to be associated with the returned
EndpointReference instance.
W3CEndpointReference created from
serviceName,
portName,
metadata,
wsdlDocumentLocation and
referenceParameters. This method never returns
null.
IllegalStateException -
address, serviceName and portName are all null. serviceName service is null and the portName is NOT null. address property is null and the serviceName and portName do not specify a valid endpoint published by the same Java EE application. serviceNameis NOT null and is not present in the specified WSDL. portName port is not null and it is not present in serviceName service in the WSDL. wsdlDocumentLocation is NOT null and does not represent a valid WSDL. wsdlDocumentLocation is NOT null but wsdli:wsdlLocation's namespace name cannot be got from the available metadata. WebServiceException - If an error occurs while creating the
W3CEndpointReference.
public EndpointcreateAndPublishEndpoint(String address, Object implementor, WebServiceFeature ... features)
Provider implementations must override the default implementation.
address - A URI specifying the address and transport/protocol to use. A http: URI MUST result in the SOAP 1.1/HTTP binding being used. Implementations may support other URI schemes.
implementor - A service implementation object to which incoming requests will be dispatched. The corresponding class MUST be annotated with all the necessary Web service annotations.
features - A list of WebServiceFeatures to configure on the endpoint. Supported features not in the
features parameter will have their default values.
public EndpointcreateEndpoint(String bindingId, Object implementor, WebServiceFeature ... features)
Provider implementations must override the default implementation.
bindingId - A URI specifying the desired binding (e.g. SOAP/HTTP)
implementor - A service implementation object to which incoming requests will be dispatched. The corresponding class MUST be annotated with all the necessary Web service annotations.
features - A list of WebServiceFeatures to configure on the endpoint. Supported features not in the
features parameter will have their default values.
public EndpointcreateEndpoint(String bindingId, Class <?> implementorClass, Invoker invoker, WebServiceFeature ... features)
Provider implementations must override the default implementation.
bindingId - A URI specifying the desired binding (e.g. SOAP/HTTP). Can be null.
implementorClass - A service implementation class that MUST be annotated with all the necessary Web service annotations.
invoker - that does the actual invocation on the service instance.
features - A list of WebServiceFeatures to configure on the endpoint. Supported features not in the
features parameter will have their default values.