NAME
wsdl-parser - Parses a WSDL file to generate a SOAP client
VERSION
This documentation refers to wsdl-parser version 0.14.
SYNOPSIS
wsdl-parser [options] [--module-base|-b Pkg WSDL
wsdl-parser [options] Pkg::Name WSDL [--namespace-map|-n] 'xsd-namespace=perl-namespace' ...
wsdl-parser [options] Pkg::Name WSDL [--map-file|-f] file
wsdl-parser [options] [--show|-s] WSDL
OPTIONS:
WSDL The WSDL file or URL to get the WSDL from
Pkg::Name The Perl package namespace you want the WSDLs operations accessible from
-s --show Show some info about the passed WSDL file eg it's operations
-b --module-base[=]str
Let the W3C::SOAP auto generate package names for any WSDLs or
XSDs found while processing. (Note packages will be valid
but not pretty)
-n --namespace-map ns=package
A mapping of XSD namespaces (ns) to perl package names
(package), it is required when writing XSD files if --module-base
is not specified. (This results in controlled namespaces but can
be a lot of work to setup)
-f --map-file[=]file
File that contains namespace mappings instead of having to
write all the mappings on the command line and can be used
again for other WSDLs or regenerating the current one.
-l --lib[=]dir
Directory where generated modules should be writted, the
default is ./lib
-p --path[=]str
Extra template toolkit directories if you want to override
default templates.
-S --save Save all downloaded WSDLs & XSDs
-v --verbose Show more detailed option
--version Prints the version information
--help Prints this help information
--man Prints the full documentation for wsdl-parser
DESCRIPTION
There are three basic modes of operation of wsdl-parser
:
- show
-
When using the
--show
optionwsdl-parser
dumps a human readable version of what the WSDL can do. - basic
-
In basic mode occurs when using the
--module-base
option W3C::SOAP will generate all of the module names for the WSDL and XSDs processed. The names are based on the target namespaces of each WSDL or XSD so they might end up being rather long and unwieldy. - advanced
-
In the advanced mode all namespaces must be specified either by
--namespace-map
on the command line or by specifying a--map-file
. The easiest way to do this is to runwsdl-parser
and look at the thrown errors (which should include the unmapped XSD namespace and append that namespace to the end of the command and run again. This may take several iterations to get all of the namespaces specified.
map-file
The file format is = or tab separated rows of 2 elements with the first being the XSD namespace and the second being the perl package namespace. Lines with nothing on them are ignored as are lines starting with a hash (#).
An example map file:
# this is ignored
http://example.com/=XSD::Example
http://example.com/data=XSD::Example::Data
SUBROUTINES/METHODS
CONFIGURATION AND ENVIRONMENT
DEPENDENCIES
INCOMPATIBILITIES
BUGS AND LIMITATIONS
There are no known bugs in this module.
Please report problems to Ivan Wills (ivan.wills@gmail.com).
Patches are welcome.
AUTHOR
Ivan Wills - (ivan.wills@gmail.com)
LICENSE AND COPYRIGHT
Copyright (c) 2012 Ivan Wills (14 Mullion Close, Hornsby Heights, NSW Australia 2077). All rights reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.