IBM WebSphere Application ServerTM
Release 8

com.ibm.wsspi.webservices.rpc
Interface Call

All Superinterfaces:
javax.xml.rpc.Call, com.ibm.websphere.webservices.rpc.IBMCall

public interface Call
extends com.ibm.websphere.webservices.rpc.IBMCall

The com.ibm.wsspi.webservices.Call interface extends support for the dynamic invocation of a service endpoint. The com.ibm.wsspi.webservices.Service interface acts as a factory for the creation of Call instances specifically tailored for WSIF.

Once a Call instance is created, various setter and getter methods may be used to configure this Call instance.

Version:
1.0

Field Summary
 
Fields inherited from interface javax.xml.rpc.Call
ENCODINGSTYLE_URI_PROPERTY, OPERATION_STYLE_PROPERTY, PASSWORD_PROPERTY, SESSION_MAINTAIN_PROPERTY, SOAPACTION_URI_PROPERTY, SOAPACTION_USE_PROPERTY, USERNAME_PROPERTY
 
Method Summary
 void addAttachmentPart(java.lang.Object attachment)
          Deprecated. This method is not an appropriate application-level API. It will eventually disappear in favor of an as-yet-undefined SPI.
 void addFault(javax.xml.namespace.QName faultCode, java.lang.Class cls, javax.xml.namespace.QName msgQName, javax.xml.namespace.QName xmlType, javax.xml.namespace.QName partQName)
          Add a fault for this operation
 void addHeader(com.ibm.ws.webservices.engine.xmlsoap.SOAPHeaderElement header)
          Add a header which should be inserted into each outgoing message we generate.
 void clearHeaders()
          Clear the list of headers which we insert into each message
 java.util.List invoke(com.ibm.ws.webservices.engine.xmlsoap.SOAPBodyElement[] inputParams)
          Deprecated. There is no long term commitment to support this method
 com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope invoke(com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope env)
          Invoke the service with a custom SOAPEnvelope.
 void invokeOneWay(com.ibm.ws.webservices.engine.xmlsoap.SOAPBodyElement[] params)
          Deprecated. There is no long term commitment to support this method
 void registerTypeMapping(java.lang.Class javaType, javax.xml.namespace.QName xmlType, com.ibm.ws.webservices.engine.encoding.SerializerFactory sf, com.ibm.ws.webservices.engine.encoding.DeserializerFactory df)
          Register type mapping information for serialization/deserialization
 void setEncodingStyle(java.lang.String namespaceURI)
          Sets the encoding style to the URL passed in.
 void setMaintainSession(boolean yesno)
          Determine whether we'd like to track sessions or not.
 void setOperationStyle(java.lang.String operationStyle)
          Set the operation style: "document", "rpc", "wrapped", or "message".
 void setOperationUse(java.lang.String operationUse)
          Set the operation use: "literal", "encoded".
 void setPortName(javax.xml.namespace.QName portName)
          Sets the port name of this Call object.
 
Methods inherited from interface com.ibm.websphere.webservices.rpc.IBMCall
addAttachmentParameter, addParameter, addParameter, setAttachmentReturnType
 
Methods inherited from interface javax.xml.rpc.Call
addParameter, addParameter, getOperationName, getOutputParams, getOutputValues, getParameterTypeByName, getPortTypeName, getProperty, getPropertyNames, getReturnType, getTargetEndpointAddress, invoke, invoke, invokeOneWay, isParameterAndReturnSpecRequired, removeAllParameters, removeProperty, setOperationName, setPortTypeName, setProperty, setReturnType, setReturnType, setTargetEndpointAddress
 

Method Detail

invoke

com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope invoke(com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope env)
                                                          throws java.rmi.RemoteException
Invoke the service with a custom SOAPEnvelope.

Parameters:
env - a SOAPEnvelope to send.
Throws:
WebServicesFault
java.rmi.RemoteException

invoke

java.util.List invoke(com.ibm.ws.webservices.engine.xmlsoap.SOAPBodyElement[] inputParams)
                      throws java.rmi.RemoteException
Deprecated. There is no long term commitment to support this method

Invokes a specific operation using a synchronous request-response interaction mode. Requested by WSIF/WSGW

Parameters:
inputParams - SOAPBodyElement[]--Parameters for this invocation. This includes only the input params
Returns:
Returns the return value or null
Throws:
java.rmi.RemoteException - if there is any error in the remote method invocation or if the Call object is not configured properly.
SOAPFaultException - Indicates a SOAP fault
JAXRPCException -
  • If there is an error in the configuration of the Call object
  • If inputParams do not match the required parameter set (as specified through the addParameter invocations or in the corresponding WSDL)
  • If parameters and return type are incorrectly specified

invokeOneWay

void invokeOneWay(com.ibm.ws.webservices.engine.xmlsoap.SOAPBodyElement[] params)
Deprecated. There is no long term commitment to support this method

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 a JAXRPCException during the processing of the one-way remote call. Requested by WSIF/WSGW

Parameters:
params - SOAPBodyElement[]--Parameters for this invocation. This includes only the input params.
Throws:
JAXRPCException - if there is an error in the configuration of the Call 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

addAttachmentPart

void addAttachmentPart(java.lang.Object attachment)
Deprecated. This method is not an appropriate application-level API. It will eventually disappear in favor of an as-yet-undefined SPI.

This method adds an attachment.

Throws:
java.lang.RuntimeException - if there is no support for attachments.

addHeader

void addHeader(com.ibm.ws.webservices.engine.xmlsoap.SOAPHeaderElement header)
Add a header which should be inserted into each outgoing message we generate.

Parameters:
header - a SOAPHeaderElement to be inserted into messages

setOperationStyle

void setOperationStyle(java.lang.String operationStyle)
Set the operation style: "document", "rpc", "wrapped", or "message". NOTE: Only "document" and "rpc" are defined by JAX-RPC. This is just a convenience method. It is easier to call: call.setOperationStyle(operationStyle); than: call.setProperty(Call.OPERATION_STYLE_PROPERTY, operationStyle);

Parameters:
operationStyle - string designating style

setOperationUse

void setOperationUse(java.lang.String operationUse)
Set the operation use: "literal", "encoded". This is just a convenience method. It is easier to call: call.setOperationUse(operationUse); than: call.setProperty(com.ibm.wsspi.webservices.Constants.OPERATION_USE_PROPERTY, operationUse);

Parameters:
operationUse - string designating use
See Also:
com.ibm.wsspi.webservices.Constants.OPERATION_USE_LITERAL, com.ibm.wsspi.webservices.Constants.OPERATION_USE_ENCODED

clearHeaders

void clearHeaders()
Clear the list of headers which we insert into each message


setPortName

void setPortName(javax.xml.namespace.QName portName)
Sets the port name of this Call object. This call will not set any additional fields, nor will it do any checking to verify that this port name is actually defined in the WSDL - for now anyway. This is just a convenience method. It is easier to call: call.setPortName(portName); than: call.setProperty(com.ibm.wsspi.webservices.Constants.WSDL_PORT_NAME_PROPERTY, portName);

Parameters:
portName - Fully qualified name of the port

setMaintainSession

void setMaintainSession(boolean yesno)
Determine whether we'd like to track sessions or not. This overrides the default setting from the service. This just passes through the value into the MessageContext. This is just a convenience method. It's easier to call: call.setMaintainSession(true); than: call.setProperty(Call.SESSION_MAINTAIN_PROPERTY, new Boolean(true));

Parameters:
yesno - true if session state is desired, false if not.

setEncodingStyle

void setEncodingStyle(java.lang.String namespaceURI)
Sets the encoding style to the URL passed in. This is just a convenience method. It is easier to call: call.setEncodingStyle(namespaceURI); than: call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY, namespaceURI);

Parameters:
namespaceURI - URI of the encoding to use.

registerTypeMapping

void registerTypeMapping(java.lang.Class javaType,
                         javax.xml.namespace.QName xmlType,
                         com.ibm.ws.webservices.engine.encoding.SerializerFactory sf,
                         com.ibm.ws.webservices.engine.encoding.DeserializerFactory df)
Register type mapping information for serialization/deserialization

Parameters:
javaType - is the Java class of the data type.
xmlType - the xsi:type QName of the associated XML type.
sf - the serializer factory (or the Class object of the factory).
df - the deserializer factory (or the Class object of the factory).

addFault

void addFault(javax.xml.namespace.QName faultCode,
              java.lang.Class cls,
              javax.xml.namespace.QName msgQName,
              javax.xml.namespace.QName xmlType,
              javax.xml.namespace.QName partQName)
Add a fault for this operation

Parameters:
faultCode - QName used in SOAPFault fault code (same as messageQName if simple fault)
cls - Class of matching Exception
msgQName - QName of WSDL Message
xmlType - QName of complex type of Part
partQName - QName of Part

IBM WebSphere Application ServerTM
Release 8