org.apache.tools.ant.taskdefs.optional.dotnet

Class WsdlToDotnet

public class WsdlToDotnet extends Task

Converts a WSDL file or URL resource into a .NET language. Why add a wrapper to the MS WSDL tool? So that you can verify that your web services, be they written with Axis or anyone else's SOAP toolkit, work with .NET clients. This task is dependency aware when using a file as a source and destination; so if you <get> the file (with usetimestamp="true") then you only rebuild stuff when the WSDL file is changed. Of course, if the server generates a new timestamp every time you ask for the WSDL, this is not enough...use the <filesmatch> <condition> to to byte for byte comparison against a cached WSDL file then make the target conditional on that test failing. See "Creating an XML Web Service Proxy", "wsdl.exe" docs in the framework SDK documentation

Since: Ant 1.5

Version: 0.5

UNKNOWN: category="dotnet"

Nested Class Summary
static classWsdlToDotnet.Compiler
The enumerated values for our compiler
static classWsdlToDotnet.Schema
nested schema class Only supported on NET until mono add multi-URL handling on the command line
Field Summary
protected StringextraOptions
any extra command options?
static StringERROR_DEST_FILE_IS_DIR
error message: dest file is a directory
static StringERROR_NO_DEST_FILE
error message: no dest file
Method Summary
voidaddSchema(WsdlToDotnet.Schema source)
add a new source schema to the compilation
voidexecute()
do the work by building the command line and then calling it
voidsetCompiler(WsdlToDotnet.Compiler compiler)
identify the compiler
voidsetDestFile(File destFile)
Name of the file to generate.
voidsetExtraOptions(String extraOptions)
Any extra WSDL.EXE options which aren't explicitly supported by the ant wrapper task; optional
voidsetFailOnError(boolean failOnError)
Whether or not a failure should halt the build.
voidsetIdeErrors(boolean ideErrors)
Defines wether errors are machine parseable.
voidsetLanguage(String language)
set the language; one of "CS", "JS", or "VB" optional, default is CS for C# source
voidsetMakeURL(boolean b)
flag to trigger turning a filename into a file:url ignored for the mono compiler.
voidsetNamespace(String namespace)
namespace to place the source in. optional; default ""
voidsetProtocol(String protocol)
what protocol to use.
voidsetServer(boolean server)
flag to enable server side code generation; optional, default=false
voidsetSrcFile(File srcFile)
The local WSDL file to parse; either url or srcFile is required.
voidsetUrl(String url)
Sets the URL to fetch.
protected voidvalidate()
validation code

Field Detail

extraOptions

protected String extraOptions
any extra command options?

ERROR_DEST_FILE_IS_DIR

public static final String ERROR_DEST_FILE_IS_DIR
error message: dest file is a directory

ERROR_NO_DEST_FILE

public static final String ERROR_NO_DEST_FILE
error message: no dest file

Method Detail

addSchema

public void addSchema(WsdlToDotnet.Schema source)
add a new source schema to the compilation

Parameters: source a nested schema element.

Since: Ant 1.7

execute

public void execute()
do the work by building the command line and then calling it

Throws: BuildException if validation or execution failed

setCompiler

public void setCompiler(WsdlToDotnet.Compiler compiler)
identify the compiler

Parameters: compiler the enumerated value.

Since: Ant 1.7

setDestFile

public void setDestFile(File destFile)
Name of the file to generate. Required

Parameters: destFile filename

setExtraOptions

public void setExtraOptions(String extraOptions)
Any extra WSDL.EXE options which aren't explicitly supported by the ant wrapper task; optional

Parameters: extraOptions The new ExtraOptions value

setFailOnError

public void setFailOnError(boolean failOnError)
Whether or not a failure should halt the build. Optional - default is true.

Parameters: failOnError new failure option

setIdeErrors

public void setIdeErrors(boolean ideErrors)
Defines wether errors are machine parseable. Optional, default=true

Parameters: ideErrors a boolean value.

Since: Ant 1.7

setLanguage

public void setLanguage(String language)
set the language; one of "CS", "JS", or "VB" optional, default is CS for C# source

Parameters: language language to generate

setMakeURL

public void setMakeURL(boolean b)
flag to trigger turning a filename into a file:url ignored for the mono compiler.

Parameters: b a boolean value.

setNamespace

public void setNamespace(String namespace)
namespace to place the source in. optional; default ""

Parameters: namespace new namespace

setProtocol

public void setProtocol(String protocol)
what protocol to use. SOAP, SOAP1.2, HttpPost and HttpGet are the base options. Different version and implementations may. offer different options.

Parameters: protocol the protocol to use.

Since: Ant 1.7

setServer

public void setServer(boolean server)
flag to enable server side code generation; optional, default=false

Parameters: server server-side flag

setSrcFile

public void setSrcFile(File srcFile)
The local WSDL file to parse; either url or srcFile is required.

Parameters: srcFile WSDL file

setUrl

public void setUrl(String url)
Sets the URL to fetch. Fetching is by wsdl.exe; Ant proxy settings are ignored; either url or srcFile is required.

Parameters: url url to save

validate

protected void validate()
validation code

Throws: BuildException if validation failed