|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.axis2.client.ServiceClient
public class ServiceClient
Client access to a service. Each instance of this class is associated with a particular AxisService
, and the methods support operations using that service. Note that
these instances are not intended to be thread-safe.
Options
instances are used to configure various aspects of the service access.
Field Summary | |
---|---|
static QName |
ANON_OUT_IN_OP
Operation name used for an anonymous in-out operation (meaning we sent a message and receive a response, equivalent to a WSDL In-Out operation). |
static QName |
ANON_OUT_ONLY_OP
Operation name used for an anonymous out-only operation (meaning we send a message with no response allowed from the service, equivalent to a WSDL In-Only operation). |
static QName |
ANON_ROBUST_OUT_ONLY_OP
Operation name used for an anonymous robust-out-only operation (meaning we send a message, with the only possible response a fault, equivalent to a WSDL Robust-In-Only operation). |
static String |
ANON_SERVICE
Base name used for a service created without an existing configuration. |
static String |
AUTO_OPERATION_CLEANUP
Option property name for automatically cleaning up old OperationContexts |
protected static org.apache.commons.logging.Log |
log
|
Constructor Summary | |
---|---|
ServiceClient()
Create a service client by assuming an anonymous service and any other necessary information. |
|
ServiceClient(ConfigurationContext configContext,
AxisService axisService)
Create a service client configured to work with a specific AxisService. |
|
ServiceClient(ConfigurationContext configContext,
javax.wsdl.Definition wsdl4jDefinition,
QName wsdlServiceName,
String portName)
This is WSDL4J based constructor to configure the Service Client/ TODO: make this policy aware |
|
ServiceClient(ConfigurationContext configContext,
URL wsdlURL,
QName wsdlServiceName,
String portName)
Create a service client for WSDL service identified by the QName of the wsdl:service element in a WSDL document. |
Method Summary | |
---|---|
void |
addHeader(org.apache.axiom.om.OMElement header)
Add an arbitrary XML element as a header to be sent with outgoing messages. |
void |
addHeader(org.apache.axiom.soap.SOAPHeaderBlock header)
Add SOAP Header to be sent with outgoing messages. |
void |
addHeadersToEnvelope(org.apache.axiom.soap.SOAPEnvelope envelope)
Add all configured headers to a SOAP envelope. |
void |
addStringHeader(QName headerName,
String headerText)
Add a simple header containing some text to be sent with interactions. |
void |
cleanup()
Clean up configuration created with this client. |
void |
cleanupTransport()
Release resources allocated by the transport during the last service invocation. |
OperationClient |
createClient(QName operationQName)
Create an operation client with the appropriate message exchange pattern (MEP). |
void |
disengageModule(QName moduleName)
Deprecated. Please use String version instead |
void |
disengageModule(String moduleName)
Disengage a module for this service client |
void |
engageModule(QName moduleName)
Deprecated. Please use String version instead |
void |
engageModule(String moduleName)
Engage a module for this service client. |
boolean |
equals(Object obj)
|
protected void |
finalize()
|
void |
fireAndForget(org.apache.axiom.om.OMElement elem)
Directly invoke an anonymous operation with an In-Only MEP. |
void |
fireAndForget(QName operation,
org.apache.axiom.om.OMElement elem)
Directly invoke a named operation with an In-Only MEP. |
AxisConfiguration |
getAxisConfiguration()
Get the AxisConfiguration |
AxisService |
getAxisService()
Return the AxisService this is a client for. |
OperationContext |
getLastOperationContext()
Gets the last OperationContext |
EndpointReference |
getMyEPR(String transport)
Get the endpoint reference for this client using a particular transport. |
Options |
getOptions()
Get the basic client configuration from this service interaction. |
Options |
getOverrideOptions()
Get the client configuration used to override the normal options set by an operation client. |
ServiceContext |
getServiceContext()
Get the service context. |
EndpointReference |
getTargetEPR()
Get the endpoint reference for the service. |
int |
hashCode()
|
void |
removeHeaders()
Remove all headers for outgoing message. |
org.apache.axiom.om.OMElement |
sendReceive(org.apache.axiom.om.OMElement elem)
Directly invoke an anonymous operation with an In-Out MEP. |
org.apache.axiom.om.OMElement |
sendReceive(QName operationQName,
org.apache.axiom.om.OMElement xmlPayload)
Directly invoke a named operationQName with an In-Out MEP. |
void |
sendReceiveNonBlocking(org.apache.axiom.om.OMElement elem,
AxisCallback callback)
Directly invoke an anonymous operation with an In-Out MEP without waiting for a response. |
void |
sendReceiveNonBlocking(org.apache.axiom.om.OMElement elem,
Callback callback)
Deprecated. Please use the AxisCallback interface rather than Callback, which has been deprecated |
void |
sendReceiveNonBlocking(QName operation,
org.apache.axiom.om.OMElement elem,
AxisCallback callback)
Directly invoke a named operation with an In-Out MEP without waiting for a response. |
void |
sendReceiveNonBlocking(QName operation,
org.apache.axiom.om.OMElement elem,
Callback callback)
Deprecated. Please use the AxisCallback interface rather than Callback, which has been deprecated |
void |
sendRobust(org.apache.axiom.om.OMElement elem)
Directly invoke an anonymous operation with a Robust In-Only MEP. |
void |
sendRobust(QName operation,
org.apache.axiom.om.OMElement elem)
Directly invoke a named operation with a Robust In-Only MEP. |
void |
setAxisService(AxisService axisService)
Configure the ServiceClient to interact with the Web service described by the specified AxisService object. |
void |
setCachingOperationContext(boolean cachingOpContext)
Deprecated. |
void |
setOptions(Options options)
Set the basic client configuration related to this service interaction. |
void |
setOverrideOptions(Options overrideOptions)
Set a client configuration to override the normal options used by an operation client. |
void |
setTargetEPR(EndpointReference targetEpr)
Set the endpoint reference for the service. |
Methods inherited from class java.lang.Object |
---|
clone, getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final org.apache.commons.logging.Log log
public static final String ANON_SERVICE
public static final String AUTO_OPERATION_CLEANUP
public static final QName ANON_OUT_ONLY_OP
public static final QName ANON_ROBUST_OUT_ONLY_OP
public static final QName ANON_OUT_IN_OP
Constructor Detail |
---|
public ServiceClient(ConfigurationContext configContext, AxisService axisService) throws AxisFault
configContext
- The configuration context under which this service lives (may be null,
in which case a new local one will be created)axisService
- The service for which this is the client (may be null
, in
which case an anonymous service will be created)
AxisFault
- if something goes wrong while creating a config context (if needed)public ServiceClient(ConfigurationContext configContext, javax.wsdl.Definition wsdl4jDefinition, QName wsdlServiceName, String portName) throws AxisFault
configContext
- active ConfigurationContextwsdl4jDefinition
- the WSDL we're going to be using to configure ourselveswsdlServiceName
- QName of the WSDL service we'd like to accessportName
- name of the WSDL port we'd like to access
AxisFault
- in case of errorpublic ServiceClient(ConfigurationContext configContext, URL wsdlURL, QName wsdlServiceName, String portName) throws AxisFault
configContext
- The configuration context under which this service lives (may be
null
, in which case a new local one will be created) *wsdlURL
- The URL of the WSDL document to readwsdlServiceName
- The QName of the WSDL service in the WSDL document to create a client
forportName
- The name of the WSDL 1.1 port to create a client for. May be null (if
WSDL 2.0 is used or if only one port is there). .
AxisFault
- if something goes wrong while creating a config context (if needed)public ServiceClient() throws AxisFault
AxisFault
- in case of errorMethod Detail |
---|
public AxisConfiguration getAxisConfiguration()
public AxisService getAxisService()
public void setOptions(Options options)
options
- (non-null
)public Options getOptions()
public void setOverrideOptions(Options overrideOptions)
overrideOptions
- the Options to usepublic Options getOverrideOptions()
public void engageModule(QName moduleName) throws AxisFault
moduleName
- name of the module to engage
AxisFault
- if something goes wrongpublic void engageModule(String moduleName) throws AxisFault
moduleName
- name of the module to engage
AxisFault
- if something goes wrongpublic void disengageModule(QName moduleName)
moduleName
- name of Module to disengagepublic void disengageModule(String moduleName)
moduleName
- name of Module to disengagepublic void addHeader(org.apache.axiom.om.OMElement header)
header
- header to be sent (non-null
)public void addHeader(org.apache.axiom.soap.SOAPHeaderBlock header)
header
- header to be sent (non-null
)public void removeHeaders()
public void addStringHeader(QName headerName, String headerText) throws AxisFault
headerName
- name of header to addheaderText
- text content for header
AxisFault
- in case of errorpublic void sendRobust(org.apache.axiom.om.OMElement elem) throws AxisFault
elem
- XML to send
AxisFault
- if something goes wrong while sending, or if a fault is received in
response (per the Robust In-Only MEP).createClient(QName)
public void sendRobust(QName operation, org.apache.axiom.om.OMElement elem) throws AxisFault
operation
- name of operation to be invoked (non-null
)elem
- XML to send
AxisFault
- if something goes wrong while sending it or if a fault is received in
response (per the Robust In-Only MEP).createClient(QName)
public void fireAndForget(org.apache.axiom.om.OMElement elem) throws AxisFault
elem
- XML to send
AxisFault
- ff something goes wrong trying to send the XMLcreateClient(QName)
public void fireAndForget(QName operation, org.apache.axiom.om.OMElement elem) throws AxisFault
operation
- name of operation to be invoked (non-null
)elem
- XML to send
AxisFault
- if something goes wrong trying to send the XMLcreateClient(QName)
public org.apache.axiom.om.OMElement sendReceive(org.apache.axiom.om.OMElement elem) throws AxisFault
Unless the callTransportCleanup
property on the Options
object has been
set to true
, the caller must invoke cleanupTransport()
after
processing the response.
elem
- the data to send (becomes the content of SOAP body)
AxisFault
- in case of errorcreateClient(QName)
,
cleanupTransport()
public org.apache.axiom.om.OMElement sendReceive(QName operationQName, org.apache.axiom.om.OMElement xmlPayload) throws AxisFault
Unless the callTransportCleanup
property on the Options
object has been
set to true
, the caller must invoke cleanupTransport()
after
processing the response.
operationQName
- name of operationQName to be invoked (non-null
)xmlPayload
- the data to send (becomes the content of SOAP body)
AxisFault
- in case of errorcleanupTransport()
public void sendReceiveNonBlocking(org.apache.axiom.om.OMElement elem, Callback callback) throws AxisFault
elem
- the data to send (becomes the content of SOAP body)callback
- a Callback which will be notified upon completion
AxisFault
- in case of errorcreateClient(QName)
public void sendReceiveNonBlocking(org.apache.axiom.om.OMElement elem, AxisCallback callback) throws AxisFault
elem
- the data to send (becomes the content of SOAP body)callback
- a Callback which will be notified upon completion
AxisFault
- in case of errorcreateClient(QName)
public void sendReceiveNonBlocking(QName operation, org.apache.axiom.om.OMElement elem, Callback callback) throws AxisFault
operation
- name of operation to be invoked (non-null
)elem
- the data to send (becomes the content of SOAP body)callback
- a Callback which will be notified upon completion
AxisFault
- in case of errorcreateClient(QName)
public void sendReceiveNonBlocking(QName operation, org.apache.axiom.om.OMElement elem, AxisCallback callback) throws AxisFault
operation
- name of operation to be invoked (non-null
)elem
- the data to send (becomes the content of SOAP body)callback
- a Callback which will be notified upon completion
AxisFault
- in case of errorcreateClient(QName)
public OperationClient createClient(QName operationQName) throws AxisFault
operationQName
- qualified name of operation (local name is operation name, namespace
URI is just the empty string)
AxisFault
- if the operation is not foundpublic void addHeadersToEnvelope(org.apache.axiom.soap.SOAPEnvelope envelope)
envelope
- the SOAPEnvelope in which to write the headerspublic EndpointReference getMyEPR(String transport) throws AxisFault
transport
- transport name (non-null
)
AxisFault
- in case of errorpublic EndpointReference getTargetEPR()
public void setTargetEPR(EndpointReference targetEpr)
targetEpr
- the EPR this ServiceClient should targetpublic OperationContext getLastOperationContext()
public void setCachingOperationContext(boolean cachingOpContext)
cachingOpContext
- true if we should hold onto the last active OperationContextpublic ServiceContext getServiceContext()
protected void finalize() throws Throwable
finalize
in class Object
Throwable
public void cleanup() throws AxisFault
AxisFault
- in case of errorpublic void cleanupTransport() throws AxisFault
TransportSender.cleanup(MessageContext)
on the
transport sender used during that invocation.
If the callTransportCleanup
property on the Options
object is
set to false
(which is the default), then this method must be called
after each invocation of an operation with an in-out MEP, but not before the response
from that operation has been completely processed (or OMSerializable.build()
has been called on the response element).
If the callTransportCleanup
property is set to true
,
then this method is called automatically. Note that in this case, OMSerializable.build()
will be called on the response element before is returned. This effectively disables
deferred parsing of the response and prevents the code from starting to process the
response before it has been completely received. Therefore this approach is not recommended
whenever performance is important.
AxisFault
public void setAxisService(AxisService axisService) throws AxisFault
axisService
- the AxisService that represents the new Web service.
AxisFault
- if an error occurs while configuring the ServiceClient.public int hashCode()
hashCode
in class Object
Object.hashCode()
public boolean equals(Object obj)
equals
in class Object
Object.equals(java.lang.Object)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |