WSDL2AWS(1)

πŸ“¦
version 26.0.0 Β· 2 versions
, in fedora 43, fedora 44

πŸ’– WSDL2AWS(1) β€” the Ada Web Server girlies' guide πŸ’–

okay bestie, sit DOWN because today we're talking about wsdl2aws, a little icon from the AWS User's Guide (that's the Ada Web Server, not the cloud thing, iykyk 🫢). she generates stubs and skeletons for web services and honestly? she eats. let's get into it ✨


🌸 NAME 🌸

wsdl2aws β€” generate stubs and skeletons for web services πŸ’…


✨ SYNOPSIS ✨

wsdl2aws [options] URL

πŸ¦‹ DESCRIPTION πŸ¦‹

so, first things first: The Ada Web Server is a library that lets you embed a whole web server right into your Ada application. it's not just HTTP either β€” it does SOAP, WSDL and a bunch of other stuff too, so you can literally write full-fledged web applications. main character energy fr fr πŸ‘‘

now. WSDL (Web Service Definition Language) is a language based on XML. WSDL documents describe, in a formal way, the interface to Web Services. and what's in that description? the whole lineup:

  • the end-point (URL to the server offering the service)
  • the SOAPAction (needed to call the remote procedure)
  • the procedure names
  • a description of the input and output parameters

and 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. not me getting emotional about not touching SOAP πŸ˜­πŸ™ˆ

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. slay.

the server side is another package consisting of skeleton implementations of these subprograms. iconic.

and the URL? that points to the WSDL document to be processed. that's the one thing you actually gotta hand her πŸŽ€


πŸ’… 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. so pretty, so proper ✨
  • -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 also need to specify the -types option, see below. (yes bestie, they're a package deal 🫢)
  • -cvs β€” Add CVS id tag in every generated file. nostalgia-core 🌈
  • -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. she's flexible like that πŸ’β™€οΈ
  • -f β€” Force creation of the file. Overwrite any exiting files with the same name. (yes, the manpage says "exiting", we love her for it πŸ’€ but for real: this one overwrites your files, so be careful.)
  • -main filename β€” Specify the name of the server's procedure main to generate. if the 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. stubs only era πŸŽ€
  • -nostub β€” Do not generate stubs, only skeletons. skeletons only era πŸ¦‹
  • -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). very specific, very niche, very her πŸ’œ
  • -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). she's giving nothing and that's the point 🀫
  • -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. bestie said "we move on" πŸ’…
  • -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. tell me EVERYTHING πŸ—£οΈ
  • -v -v β€” Verbose mode, display the parsed spec and lots of information while parsing the WSDL document. double the -v, double the tea β˜•βœ¨
  • -wsdl β€” Add WSDL document as comment into the generated root unit. receipts, preserved πŸ“

🌈 SEE ALSO 🌈


πŸ‘‘ AUTHOR πŸ‘‘

wsdl2aws was written by Dmitriy Anisimkov <anisimkov@yahoo.com> and Pascal Obry <p.obry@wanadoo.fr> as part of the Ada Web Server. legends, honestly 🫢

This manual page was written by Ludovic Brenta <ludovic.brenta@insalien.org> for Debian GNU/Linux.

adopted by Pavel Zhukov <landgraf@fedoraproject.org> for Fedora Project. the crossover episode nobody expected and everybody needed πŸ’–


ok that's the whole page bestie, no cap, every flag accounted for. now go generate some stubs and be the main character of your own SOAP stack πŸ’…βœ¨

GNU Ada Tools β€” 11 JUN 2004 β€” WSDL2AWS(1) πŸŽ€ that's the vintage, that's the date, and that's the vibe. periodt. πŸ’œ

πŸ“¦ where this page comes from