Package javax.xml.rpc
Interface Call
- All Known Implementing Classes:
Call
public interface Call
The
javax.xml.rpc.Call
interface provides support
for the dynamic invocation of a service endpoint. The
javax.xml.rpc.Service
interface acts as a factory
for the creation of Call
instances.
Once a Call
instance is created, various setter
and getter methods may be used to configure this Call
instance.
- Version:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Standard property for encoding Style: Encoding style specified as a namespace URI.static final String
Standard property for operation style.static final String
Standard property: Password for authenticationstatic final String
Standard property: This boolean property is used by a service client to indicate whether or not it wants to participate in a session with a service endpoint.static final String
Standard property for SOAPAction.static final String
Standard property for SOAPAction.static final String
Standard property: User name for authentication -
Method Summary
Modifier and TypeMethodDescriptionvoid
addParameter
(String paramName, QName xmlType, Class javaType, ParameterMode parameterMode) Adds a parameter type and mode for a specific operation.void
addParameter
(String paramName, QName xmlType, ParameterMode parameterMode) Adds a parameter type and mode for a specific operation.Gets the name of the operation to be invoked using this Call instance.Returns aMap
of {name, value} for the output parameters of the last invoked operation.Returns aList
values for the output parameters of the last invoked operation.getParameterTypeByName
(String paramName) Gets the XML type of a parameter by name.Gets the qualified name of the port type.getProperty
(String name) Gets the value of a named property.Gets the names of configurable properties supported by thisCall
object.Gets the return type for a specific operation.Gets the address of a target service endpoint.Invokes a specific operation using a synchronous request-response interaction mode.Invokes a specific operation using a synchronous request-response interaction mode.void
invokeOneWay
(Object[] params) Invokes a remote method using the one-way interaction mode.boolean
isParameterAndReturnSpecRequired
(QName operationName) Indicates whetheraddParameter
andsetReturnType
methods are to be invoked to specify the parameter and return type specification for a specific operation.void
Removes all specified parameters from thisCall
instance.void
removeProperty
(String name) Removes a named property.void
setOperationName
(QName operationName) Sets the name of the operation to be invoked using thisCall
instance.void
setPortTypeName
(QName portType) Sets the qualified name of the port type.void
setProperty
(String name, Object value) Sets the value for a named property.void
setReturnType
(QName xmlType) Sets the return type for a specific operation.void
setReturnType
(QName xmlType, Class javaType) Sets the return type for a specific operation.void
setTargetEndpointAddress
(String address) Sets the address of the target service endpoint.
-
Field Details
-
USERNAME_PROPERTY
Standard property: User name for authenticationType:
java.lang.String
- See Also:
-
PASSWORD_PROPERTY
Standard property: Password for authenticationType:
java.lang.String
- See Also:
-
OPERATION_STYLE_PROPERTY
Standard property for operation style. This property is set to "rpc" if the operation style is rpc; "document" if the operation style is document.Type:
java.lang.String
- See Also:
-
SOAPACTION_USE_PROPERTY
Standard property for SOAPAction. This boolean property indicates whether or not SOAPAction is to be used. The default value of this property is false indicating that the SOAPAction is not used.Type:
java.lang.Boolean
- See Also:
-
SOAPACTION_URI_PROPERTY
Standard property for SOAPAction. Indicates the SOAPAction URI if thejavax.xml.rpc.soap.http.soapaction.use
property is set totrue
.Type:
java.lang.String
- See Also:
-
ENCODINGSTYLE_URI_PROPERTY
Standard property for encoding Style: Encoding style specified as a namespace URI. The default value is the SOAP 1.1 encodinghttp://schemas.xmlsoap.org/soap/encoding/
Type:
java.lang.String
- See Also:
-
SESSION_MAINTAIN_PROPERTY
Standard property: This boolean property is used by a service client to indicate whether or not it wants to participate in a session with a service endpoint. If this property is set to true, the service client indicates that it wants the session to be maintained. If set to false, the session is not maintained. The default value for this property isfalse
.Type:
java.lang.Boolean
- See Also:
-
-
Method Details
-
isParameterAndReturnSpecRequired
Indicates whetheraddParameter
andsetReturnType
methods are to be invoked to specify the parameter and return type specification for a specific operation.- Parameters:
operationName
- Qualified name of the operation- Returns:
- Returns true if the Call implementation class requires addParameter and setReturnType to be invoked in the client code for the specified operation. This method returns false otherwise.
-
addParameter
Adds a parameter type and mode for a specific operation. Note that the client code may not call anyaddParameter
andsetReturnType
methods before calling theinvoke
method. In this case, the Call implementation class determines the parameter types by using reflection on parameters, using the WSDL description and configured type mapping registry.- Parameters:
paramName
- Name of the parameterxmlType
- XML datatype of the parameterparameterMode
- Mode of the parameter-whetherParameterMode.IN
,ParameterMode.OUT
, orParameterMode.INOUT
- Throws:
JAXRPCException
- This exception may be thrown if the methodisParameterAndReturnSpecRequired
returnsfalse
for this operation.IllegalArgumentException
- If any illegal parameter name or XML type is specified
-
addParameter
Adds a parameter type and mode for a specific operation. This method is used to specify the Java type for either OUT or INOUT parameters.- Parameters:
paramName
- Name of the parameterxmlType
- XML datatype of the parameterjavaType
- The Java class of the parameterparameterMode
- Mode of the parameter-whether ParameterMode.IN, OUT or INOUT- Throws:
JAXRPCException
-- This exception may be thrown if this method is
invoked when the method
isParameterAndReturnSpecRequired
returnsfalse
. - If specified XML type and Java type mapping
is not valid. For example,
TypeMappingRegistry
has no serializers for this mapping.
- This exception may be thrown if this method is
invoked when the method
IllegalArgumentException
- If any illegal parameter name or XML type is specifiedUnsupportedOperationException
- If this method is not supported
-
getParameterTypeByName
Gets the XML type of a parameter by name.- Parameters:
paramName
- name of the parameter- Returns:
- Returns XML type for the specified parameter
-
setReturnType
Sets the return type for a specific operation. InvokingsetReturnType(null)
removes the return type for this Call object.- Parameters:
xmlType
- XML data type of the return value- Throws:
JAXRPCException
- This exception may be thrown when the methodisParameterAndReturnSpecRequired
returnsfalse
.IllegalArgumentException
- If an illegal XML type is specified
-
setReturnType
Sets the return type for a specific operation.- Parameters:
xmlType
- XML data type of the return valuejavaType
- Java class of the return value- Throws:
JAXRPCException
-- This exception may be thrown if this method is
invoked when the method
isParameterAndReturnSpecRequired
returnsfalse
. - If XML type and Java type cannot be mapped using the standard type mapping or TypeMapping registry
- This exception may be thrown if this method is
invoked when the method
UnsupportedOperationException
- If this method is not supportedIllegalArgumentException
- If an illegal XML type is specified
-
getReturnType
QName getReturnType()Gets the return type for a specific operation.- Returns:
- the XML type for the return value
-
removeAllParameters
void removeAllParameters()Removes all specified parameters from thisCall
instance. Note that this method removes only the parameters and not the return type. ThesetReturnType(null)
is used to remove the return type.- Throws:
JAXRPCException
- This exception may be thrown If this method is called when the methodisParameterAndReturnSpecRequired
returnsfalse
for this Call's operation.
-
getOperationName
QName getOperationName()Gets the name of the operation to be invoked using this Call instance.- Returns:
- Qualified name of the operation
-
setOperationName
Sets the name of the operation to be invoked using thisCall
instance.- Parameters:
operationName
- QName of the operation to be invoked using the Call instance
-
getPortTypeName
QName getPortTypeName()Gets the qualified name of the port type.- Returns:
- Qualified name of the port type
-
setPortTypeName
Sets the qualified name of the port type.- Parameters:
portType
- Qualified name of the port type
-
setTargetEndpointAddress
Sets the address of the target service endpoint. This address must correspond to the transport specified in the binding for thisCall
instance.- Parameters:
address
- Address of the target service endpoint; specified as an URI
-
getTargetEndpointAddress
String getTargetEndpointAddress()Gets the address of a target service endpoint.- Returns:
- Endpoint address of the target service port as an URI
-
setProperty
Sets the value for a named property. JAX-RPC specification specifies a standard set of properties that may be passed to theCall.setProperty
method.- Parameters:
name
- Name of the propertyvalue
- Value of the property- Throws:
JAXRPCException
-- If an optional standard property name is
specified, however this
Call
implementation class does not support the configuration of this property. - If an invalid (or unsupported) property name is specified or if a value of mismatched property type is passed.
- If there is any error in the configuration of a valid property.
- If an optional standard property name is
specified, however this
-
getProperty
Gets the value of a named property.- Parameters:
name
- Name of the property- Returns:
- Value of the named property
- Throws:
JAXRPCException
- if an invalid or unsupported property name is passed.
-
removeProperty
Removes a named property.- Parameters:
name
- Name of the property- Throws:
JAXRPCException
- if an invalid or unsupported property name is passed.
-
getPropertyNames
Iterator getPropertyNames()Gets the names of configurable properties supported by thisCall
object.- Returns:
- Iterator for the property names
-
invoke
Invokes a specific operation using a synchronous request-response interaction mode.- Parameters:
inputParams
- Object[]--Parameters for this invocation. This includes only the input params- Returns:
- Returns the return value or
null
- Throws:
RemoteException
- if there is any error in the remote method invocation or if the Call object is not configured properly.SOAPFaultException
- Indicates a SOAP faultJAXRPCException
-- If there is an error in the configuration of the
Call
object - If
inputParams
do not match the required parameter set (as specified through theaddParameter
invocations or in the corresponding WSDL) - If parameters and return type are incorrectly specified
- If there is an error in the configuration of the
-
invoke
Invokes a specific operation using a synchronous request-response interaction mode.- Parameters:
operationName
- QName of the operationinputParams
- Object[]--Parameters for this invocation. This includes only the input params.- Returns:
- Return value or null
- Throws:
RemoteException
- if there is any error in the remote method invocation.SOAPFaultException
- Indicates a SOAP faultJAXRPCException
-- If there is an error in the configuration of the
Cal
l object - If
inputParam
s do not match the required parameter set (as specified through theaddParameter
invocations or in the corresponding WSDL) - If parameters and return type are incorrectly specified
- If there is an error in the configuration of the
-
invokeOneWay
Invokes a remote method using the one-way interaction mode. The client thread does not block waiting for the completion of the server processing for this remote method invocation. This method must not throw any remote exceptions. This method may throw aJAXRPCException
during the processing of the one-way remote call.- Parameters:
params
- Object[]--Parameters for this invocation. This includes only the input params.- Throws:
JAXRPCException
- if there is an error in the configuration of theCall
object (example: a non-void return type has been incorrectly specified for the one-way call) or if there is any error during the invocation of the one-way remote call
-
getOutputParams
Map getOutputParams()Returns aMap
of {name, value} for the output parameters of the last invoked operation. The parameter names in the returned Map are of typejava.lang.String
.- Returns:
- Map Output parameters for the last
Call.invoke()
. EmptyMap
is returned if there are no output parameters. - Throws:
JAXRPCException
- If this method is invoked for a one-way operation or is invoked before anyinvoke
method has been called.
-
getOutputValues
List getOutputValues()Returns aList
values for the output parameters of the last invoked operation.- Returns:
- java.util.List Values for the output parameters. An
empty
List
is returned if there are no output values. - Throws:
JAXRPCException
- If this method is invoked for a one-way operation or is invoked before anyinvoke
method has been called.
-