NAME
wsdl2aws - Generate stubs and skeletons for web services
SYNOPSIS
wsdl2aws [options] URL
DESCRIPTION
The Ada Web Server is a library that allows you to embed a web server
into your Ada application. It provides not only HTTP but also SOAP,
WSDL and several other facilities. Thus you can write full-fledged web
applications.
WSDL (Web Service Definition Language) is a language based on XML.
WSDL documents describe, in a formal way, the interface to Web
Services. This description consists of the end-point (URL to the server
offering the service), the SOAPAction (needed to call the remote
procedure), the procedure names and a description of the input and
output parameters.
Using wsdl2aws, you can create both the client and server sides of a
Web Service. On both sides, the generated code handles marshalling and
unmarshalling of parameters and return values, so you do not have to
deal with SOAP directly.
The client side is an Ada package that contains stubs for the remote
subprograms declared by the WSDL document. These stubs call the remote
subprograms using SOAP.
The server side is another package consisting of skeleton
implementations of these subprograms.
The URL points to the WSDL document to be processed.
OPTIONS
-a Generate using Ada style names. For example `getPrice' will be
converted to `Get_Price'. This formatting is done for packages,
routines and formal parameters.
-cb Generate a SOAP dispatcher callback routine for the server. This
dispatcher routine contains the code to handle all the
operations as described in the WSDL document. You need also to
specify the -types option, see below.
-cvs Add CVS id tag in every generated file.
-doc Handle document style binding as RPC ones. This is sometimes
needed because some WSDL documents specify a document style
binding even though it is really an RPC one.
-f Force creation of the file. Overwrite any exiting files with the
same name.
-main filename
Specify the name of the server's procedure main to generate. If
file filename.amt (Ada Main Template) is present, it uses this
template file to generate the main procedure. The template can
reference the following variable tags:
SOAP_SERVICE
The name of the service as described into the WSDL
document. This tag can be used to include the right units
with @_SOAP_SERVICE_@.Client;
with @_SOAP_SERVICE_@.CB;
SOAP_VERSION
The AWS SOAP version.
BAWS_VERSION
The AWS version.
UNIT_NAME
The name of the generated unit. This is the name of the
procedure that will be created.
procedure @_UNIT_NAME_@ is
begin
...
-noskel
Do not generate skeletons, only stubs.
-nostub
Do not generate stubs, only skeletons.
-o name
Specify the name of the local WSDL document. This option can be
used only when using a Web WSDL document (i.e. passing an URL to
wsdl2aws).
-pp password
User password for the proxy if proxy authentication required.
-proxy nameIP
Use this proxy to access the WSDL document and generate code to
access to these Web Services via this proxy. The proxy can be
specified by its DNS name or IP address.
-pu name
User name for the proxy if proxy authentication required.
-q Quiet mode (no output).
-s Skip non supported SOAP routines. By default, wsdl2aws exits
with an error when a problem is found while parsing the WSDL
document. This option is useful to skip routines using non
supported types and still be able to compile the generated
files.
-types spec
Specify the name of the spec containing the Ada implementation
of the SOAP routines. This is used for example by the -cb option
above to instantiate all the server side SOAP callbacks used by
the main SOAP dispatcher routine.
-v Verbose mode, display the parsed spec.
-v -v Verbose mode, display the parsed spec and lots of information
while parsing the WSDL document.
-wsdl Add WSDL document as comment into the generated root unit.
SEE ALSO
ada2wsdl(1), awsres(1)
The Ada Web Server User's Guide in package libaws-doc.
AUTHOR
wsdl2aws was written by Dmitriy Anisimkov <anisimkov@yahoo.com> and
Pascal Obry <p.obry@wanadoo.fr> as part of the Ada Web Server.
This manual page was written by Ludovic Brenta
<ludovic.brenta@insalien.org> for Debian GNU/Linux.