The Axis EasyInvokeSoapWS Function Component (FC) is part of the Tivoli® Directory
Integrator Web Services suite.
Note:
Due to limitations of the Axis library used
by this component only WSDL (http://www.w3.org/TR/wsdl)
version 1.1 documents are supported. Furthermore, the supported message
exchange protocol is SOAP 1.1.
This is a "simplified" web service invocation component:
it is a stand-alone FC with its own Config screen, but internally
performs the same functions as the following three FCs: AxisJavaToSoap, InvokeSoapWS and AxisSoapToJava.
The functionality provided is the same as if you chain and configure
these three FCs in an AssemblyLine. When using this FC you lose the
possibility to hook custom processing, that is, you are tied to the
processing and binding provided by Axis, but you gain simplicity of
setup and use.
Note that some scenarios cannot be handled by this Function
Component, and you should use the aforementioned combination of AxisJavaToSoap,
InvokeSoapWS and AxisSoapToJava instead. Such scenarios are:
Need to process SOAP headers
Serialization/deserialization problems (see Serialization/deserialization problems for
more information on serialization/deserialization problems and how
to register custom serializers/deserializers to handle these problems)
The URL of the WSDL document describing the service. This parameter
is required; otherwise an exception is thrown on initialization.
SOAP Operation
The name of the SOAP operation as described in the WSDL file.
This parameter is required; otherwise an exception is thrown on initialization.
Login username
The login username sent to the server, using HTTP Basic authentication.
If the server requires authorization it uses this value and the next
(Login password) to authenticate the client. The encoding used is
Base64 and is done internally by the InvokeSoapWS FC.
Login password
The login password sent to the server. If the server requires
authorization it uses this value and the previous (Login username)
to authenticate the client.
Complex Types
This parameter is optional; if specified, it should be a list
of fully qualified Java class names (including the package name),
where the different elements (Java classes) of this list are separated
by one or more of the following symbols: a comma, a semicolon, a space,
a carriage return or a new line.
Operation Parameters
The list of ordered SOAP operation parameter names. This parameter
is required if the SOAP operation has any parameters and the FC is
passed an Entry; if the SOAP operation has no parameters
and the FC is passed an Entry then this parameter must be
empty. If no Entry is passed, the content of the parameter
is not relevant.
If specified, the parameter must contain a list of Attribute names,
where different Attribute names are separated by one or more of the
following symbols: a comma, a semicolon, a space, a carriage return
or a new line.
Each item from this list is a name of an Attribute, which must
be present in the Entry passed to the FC. If one of these
Attributes is missing, an Exception is thrown.
The order of the items from the list determines the order in which
the Attribute values are passed as parameters to the SOAP operation.
Timout
The time for retrieving the data (in seconds, with the possibility
to specify a decimal fraction in milliseconds. If smaller than 0.001
or explicitly set to 0 then will wait forever). Default value is 60.
Detailed Log
Checking this box causes additional log messages to be generated.
Comment
Your own comments go here.
Security and Authentication
The AxisEasyInvokeSoapWS FC uses HTTP basic authentication. When
the username and password parameters of the FC are provided, then
this information is sent to the server; if it requires authentication
it takes these two parameters for username and password.
Function Component Input
Entry or a Java object representing the web service
input data. If anything else is passed, an Exception is thrown.
Function Component Output
Entry or a Java object representing the web service
output data.
This Function Component (FC) provides a relatively simple way of
invoking SOAP over HTTP web services.
This is how the communication flows:
Web service client <-> AxisEasyInvokeSoapWS FC <-> org.apache.axis.client.Call <-> Web service
The following usability notes apply:
If this FC is passed a Java Object array
(Object[]) then it passes to the SOAP operation
each Java Object from this array in the order in which the Objects
are stored in the array. If this FC is passed an Entry,
then the order and values of the parameters passed to the SOAP operation
are determined by the value of the SOAP Operation FC parameter.
This FC is capable of generating and parsing Document-style SOAP
messages and RPC-style SOAP messages as well as parsing SOAP Fault
messages. The style of the message generated is determined by the
WSDL specified by the WSDL URL FC parameter.
The FC is capable of generating and parsing SOAP messages encoded
using both "literal" encoding and SOAP Section 5 encoding. The encoding
of the message generated is determined by the WSDL specified by the
WSDL URL FC parameter.
This FC is capable of generating and parsing SOAP messages containing
values of complex types which are defined in the <types> section
of a WSDL document. In order to do that this FC requires that (1)
the Complex Types FC parameter contains the names all Java classes
that implement the complex types used as parameters to the SOAP operation
and (2) these Java classes' class files are located in the Java class
path of Tivoli Directory
Integrator.
If an Entry is passed to this FC and the
SOAP response message returned by the server is not a SOAP Fault message
and there is a single output parameter of the SOAP Operation, then
this FC returns the parameter in the "return"
Attribute. (Due to Axis 1.1 specifics, if a SOAP operation has a single
output parameter, this parameter is considered the return value of
the operation. And if a SOAP operation has several output parameters,
its return type is considered to be void.)
If an Entry is passed to this FC and the
SOAP response message returned by the server is not a SOAP Fault message
and there are several output parameters of the SOAP Operation, then
this FC returns the output parameters in Entry Attributes,
whose names match the names of the SOAP Operation output parameters.
If an Object[] with the input parameters
of the SOAP operation is passed to this FC and the SOAP response message
returned by the server is not a SOAP Fault message, the result is
of type Object[], where the first element
is the return value of the SOAP operation (null if the operation is
void) and the rest are the output parameters of the operation.
Object[] -> AxisEasyInvokeSoapWS FC -> Object[]
or
Entry -> AxisEasyInvokeSoapWS FC -> Entry
This FC provides username and password parameters. If these parameters
are specified, then the FC sets basic authorization header and sends
it to the server. It encodes the supplied username and password. The
used encoding method is base64 and is done inside the InvokeSoapWS
FC.
The timeout field specifies the time the invocation will
wait for response. On a timeout an exception will be thrown notifying
the user that the webservice did not respond in a timely fashion.
The default timeout used by Axis 1.4 is 60 seconds. The timeOut parameter
can accept a double value formatted to the third digit after the point
and is in seconds.