NonStop SOAP User's Manual

Using NonStop SOAP with a TS/MP Application and
NonStop Processes
NonStop SOAP User’s Manual520501-012
6-23
Writing a Client
Writing a Client
Writing a new HTTP client is the most obvious customization required by a real
application. The generated client uses field names from the DDL definition in a format
straightforward to developers but not attractive or meaningful to users. You’ll want to
modify the client to:
Support multiple requests, possibly to multiple services.
Present a meaningful and attractive look and feel to your users.
Establish and manage sessions and transactions.
Control the output encoding of SOAP messages.
A client can also use the SOAP common services described in Section 4, NonStop
SOAP Features and Functions.
There are several tools available from third party vendors that can consume the WSDL
that is generated by SoapAdminCL. These tools can generate proxy code. The proxy
code can be used by a client developer to write the business logic of the client without
having to know the details of SOAP/XML/HTTP.
For example, if the directory containing the generated WSDL files is exposed via the
iTP WebServer, then you can add it to a .NET project as a Web Reference. Visual
Studio.NET then generates proxy code in the default language of the .NET project (C#,
VB, or JavaScript). Similarly, Apache's Axis has a utility “wsdl2java” which can read a
WSDL file and generate proxy code in Java.
When using a .NET client or an Apache Axis client, make sure to set the attribute
NameSpaceQualified (of the <service> element) in the SDL, before executing
SoapAdminCL. When using the Apache client, also set the attribute
SoapMessageType to “rpc” in the <service> element.
Also available with the NonStop SOAP product is the NonStop SOAP Client (T0624)
which is a port of the gSOAP package from Genivia, Inc to the NonStop platform. For
more information on the NonStop SOAP Client, see the NonStop SOAP Client readme
file.
These sections describe how to use the common services, specifically sessions,
transactions, and internationalization, in a client that communicates with TS/MP
services and NonStop processes.