<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
  <meta http-equiv="content-type" content="">
  <title>Axis2 Reference Guide</title>
  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all" />
</head>

<body lang="en-US" dir="ltr">
<a name="_Toc96697849" id="_Toc96697849"></a>
<h1 align="center">Axis2 Reference Guide</h1>

<a name="wsdl2code"></a>
<h2> WSDL2Java Reference</h2>
<pre>NAME
       WSDL2Java.sh or WSDL2Java.bat - Generates java code according to a given WSDL file to handle Web service invocation.
       These scripts can be found under the bin directory of the Axis2 distribution.

SYNOPSIS
       WSDL2Java.sh [OPTION]... -uri &lt;Location of WSDL&gt;

DESCRIPTION
       Given a WSDL file, this generates java code to handle Web service invocations.

        -o &lt;output Location&gt; : output file location
        -a : Generate async style code only. Default is off
        -s : Generate sync style code only. Default is off. takes precedence over -a
        -p &lt;package name&gt; : set custom package name
        -l &lt;language&gt; : valid languages are java and csharp. Default is java
        -t : Generate TestCase to test the generated code
        -ss : Generate server side code (i.e. skeletons). Default is off
        -sd : Generate service descriptor (i.e. services.xml). Default is off. Valid with -ss
        -d &lt;databinding&gt; : valid databinding(s) are adb, xmlbeans and jaxme. Default is adb
        -g : Generates all the classes. valid only with the -ss (This will generate client and server codes)
        -pn &lt;port_name&gt; : name of port in the presence of multiple ports
        -sn &lt;service_name&gt; : name of service in the presence of multiple services
        -u : unpacks the databinding classes
        -r &lt;repository_path&gt; : path of the repository against which code is generated
	-ns2p ns1=pkg1,ns2=pkg2 : Specify a custom package name for each namespace specified in the wsdl's schema
	-ssi : Generate an interface for the service implementation (Default: off)
	-em : Specify an external mapping file
	-wv : WSDL Version. Valid Options : 2, 2.0, 1.1
	-f : Generate the source output folder without the src directory
	-uw : Switch on un-wrapping.
	-S &lt;folder name&gt; : Generated source folder name. (Default: src)
	-R &lt;folder name&gt; : Generated resources folder name. (Default: resources)
	
EXAMPLES
       WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl
       WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -ss -sd 
       WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -ss -sd -d xmlbeans -o ../samples -p org.apache.axis2.userguide</pre>

<a name="wsdl2java"></a>
<h2> Java2WSDL Reference</h2>
<pre>NAME
       Java2WSDL.sh or Java2WSDL.bat - Generates the appropriate WSDL file for a given java class.
       These scripts can be found under the bin directory of the Axis2 distribution.

SYNOPSIS
       Java2WSDL.sh [OPTION]... -cn &lt;fully qualified class name&gt;

DESCRIPTION
       Given a java class generates a WSDL file for the given java class. 

       -o &lt;output Location&gt; : output file location
       -cp &lt;class path uri&gt; : list of classpath entries - (urls)
       -tn &lt;target namespace&gt; : target namespace
       -tp &lt;target namespace prefix&gt; : target namespace prefix
       -stn &lt;schema target namespace&gt; : target namespace for schema
       -stp &lt;schema target namespace prefix&gt; : target namespace prefix for schema
       -sn &lt;service name&gt; : service name
       -of &lt;output file name&gt; : output file name for the WSDL
       -st &lt;binding style&gt; : style for the WSDL
       -u &lt;binding use&gt; : use for the WSDL
       -l &lt;soap address&gt; : address of the port for the WSDL
       -efd &lt;qualified/unqualified&gt; : Setting for elementFormDefault (defaults to qualified)
       -afd &lt;qualified/unqualified&gt; : Setting for attributeFormDefault (defaults to qualified)
       -xc &lt;extra class&gt; : Extra class for which schematype must be generated.  Use as : -xc class1 -xc class2 ...
EXAMPLES
       Java2WSDL.sh -cn ../samples/test/searchTool.Search
       Java2WSDL.sh -cn ../samples/test/searchTool.Search -sn search
       Java2WSDL.sh -cn ../samples/test/searchTool.Search -u -sn search
       Java2WSDL.sh -cn ../samples/test/searchTool.Search -sn search -o ../samples/test/wsdl  </pre>
       
</body>
</html>
