•
1. Generate or download the Oracle SALT WSDL file. For more information, see Configuring Oracle SALT in the Oracle SALT Administration Guide.
2. The sample directories for the listed toolkits can be found after Oracle SALT is installed.WebLogic Server provides the clientgen utility which is a built-in application server component used to develop Web service client-side java programs. The invocation can be issued from standalone java program and server instances. For more information, see http://edocs.bea.com/wls/docs91/webserv/client.html#standalone_invoke.Oracle SALT supports the AXIS wsdl2java utility which generates java stub code from the WSDL document. The AXIS Web service programming model is similar to WebLogic.
Tip: 1. Use the AXIS specific WSDL document for HTTP MIME attachment support.
Oracle SALT supports HTTP MIME transportation for Tuxedo CARRAY data. A special option must be specified for WSDL online downloading and the tmwsdlgen utility.
Online Download:
http://salt.host:portnumber//wsdl?mappolicy=raw&toolkit=axis
tmwsdlgen Utility
tmwsdlgen -c WSDF_FILE -m raw -t axis
Tip: 2. Disable multiple-reference format in AXIS when RPC/encoded style is used.
AXIS may send a multi-reference format SOAP message when RPC/encoded style is specified for the WSDL document. Oracle SALT does not support multiple-reference format. You can disable AXIS multiple-reference format as shown in Listing 3‑1:Listing 3‑1 Disabling AXIS Multiple-Reference Format
Tip: 3. Use Apache Sandensha project with Oracle SALT for WS-ReliableMessaging communication.
Interoperability was tested for WS-ReliableMessaging between Oracle SALT and the Apache Sandensha project. The Sandensha asynchronous mode and send offer must be set in the code.
A sample Apache Sandensha asynchronous mode and send offer code example is shown in Listing 3‑2:Microsoft .Net 1.1/2.0 provides wsdl.exe in the .Net SDK package. It is a free development Microsoft toolkit. In the Oracle SALT simpapp sample, a .Net program is provided in the simpapp/dnetclient directory..Net Web service programming is easy and straightforward. Use the wsdl.exe utility and the Oracle SALT WSDL document to generate the stub code, and then reference the .Net object contained in the stub code/binary in business logic implementations.
Tip: 1. Do not use .Net program MIME attachment binding for CARRAY.
Microsoft does not support SOAP communication MIME binding. Avoid using the WSDL document with MIME binding for CARRAY in .Net development.
Oracle SALT supports base64Binary encoding for CARRAY data (the default WSDL document generation.)
Tip: 2. Some RPC/encoded style SOAP messages are not understood by the GWWS server.
When the Oracle SALT WSDL document is generated using RPC/encoded style, .Net sends out SOAP messages containing soapenc:arrayType. Oracle SALT does not support soapenc:arrayType using RPC/encoded style. A sample RPC/encoded style-generated WSDL document is shown in Listing 3‑3.Listing 3‑3 Sample RPC/encoded Style-Generated WSDL document<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:pack.TuxAll_typedef.salt11">
<xsd:complexType name="fml_TFML_In">
<xsd:sequence>
<xsd:element maxOccurs="60" minOccurs="60" name="tflong" type="xsd:long"></xsd:element>
<xsd:element maxOccurs="80" minOccurs="80" name="tffloat" type="xsd:float"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="fml_TFML_Out">
…Workaround: Use Document/literal encoded style for .Net client as recommended by Microsoft.
Tip: 3. Error message regarding xsd:base64Binary in RPC/encoded style.
If xsd:base64Binary is used in the Oracle SALT WSDL document in RPC/encoded style, wsdl.exe can generate stub code, but the client program might report a runtime error as follows:
System.InvalidOperationException:'base64Binary' is an invalid value for the SoapElementAttribute.DataType property. The property may only be specified for primitive types.Workaround: This is a .Net framework issue.
Use Document/literal encoded style for .Net client as recommended by Microsoft.