<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.11.1 at 2022-07-14 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20220714" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Maven Axis 2 Java2WSDL Plugin &#x2013; </title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
      <script type="text/javascript" src="./js/apache-maven-fluido-1.6.min.js"></script>
      </head>
    <body class="topBarDisabled">
      <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href="http://maven.apache.org/" id="bannerLeft"><img src="http://maven.apache.org/images/apache-maven-project.png"  alt="Maven Axis 2 Java2WSDL Plugin"/></a></div>
        <div class="pull-right"><div id="bannerRight"><img src="http://maven.apache.org/images/maven-small.gif" /></div>
</div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2022-07-14<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 1.8.2<span class="divider">|</span></li>
        <li class=""><a href="http://www.apache.org" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="../../../../../../../../../../../../scm:git:https:/gitbox.apache.org/repos/asf/axis-site.git/index.html" title="Axis2/Java">Axis2/Java</a><span class="divider">/</span></li>
      <li class=""><a href="index.html" title="Maven Axis 2 Java2WSDL Plugin">Maven Axis 2 Java2WSDL Plugin</a><span class="divider">/</span></li>
    <li class="active "></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="http://maven.apache.org/maven2/" class="externalLink" title="Maven 2">Maven 2</a></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="http://ws.apache.org/axis2/" class="externalLink" title="Axis 2">Axis 2</a></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="http://ws.apache.org/" class="externalLink" title="Webservices">Webservices</a></li>
      <li class="pull-right"><a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a></li>
        </ul>
      </div>
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
<ul class="nav nav-list">
          <li class="nav-header">Overview</li>
    <li><a href="introduction.html" title="Introduction"><span class="none"></span>Introduction</a>  </li>
    <li><a href="howto.html" title="How to Use"><span class="none"></span>How to Use</a>  </li>
    <li class="active"><a href="#"><span class="none"></span>Configuration</a>
  </li>
          <li class="nav-header">Apache</li>
    <li><a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink" title="License"><span class="none"></span>License</a>  </li>
    <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a>  </li>
    <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a>  </li>
    <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a>  </li>
  </ul>
          <hr />
          <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
  <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
              </div>
          </div>
        </div>
        <div id="bodyColumn"  class="span10" >
<section>
<h2><a name="Configuration"></a>Configuration</h2>
<p>The Java2WSDL goal takes the following parameters as input. All parameters can be set from the command line by using properties. For example, the parameter &quot;className&quot; may be set using the property &quot;axis2.java2wsdl.className&quot;. If the parameter isn't set via property or in the POM, then a default value applies.</p>
<table border="1" class="table table-striped">
<tr class="a">
<td align="left">Parameter name</td>
<td align="left">Command line property Default value</td>
<td align="left">Description</td></tr>
<tr class="b">
<td align="left">className</td>
<td align="left">$<a name="axis2.java2wsdl.className">axis2.java2wsdl.className</a></td>
<td align="left">Fully qualified name of the class, which is being read and transformed into a WSDL.</td></tr>
<tr class="a">
<td align="left">outputFileName</td>
<td align="left">$<a name="axis2.java2wsdl.outputFileName">axis2.java2wsdl.outputFileName</a></td>
<td align="left">Path of the generated service file.</td></tr>
<tr class="b">
<td align="left">schemaTargetNamespace</td>
<td align="left">$<a name="axis2.java2wsdl.schemaTargetNamespace">axis2.java2wsdl.schemaTargetNamespace</a></td>
<td align="left">Target namespace of the generated schema.</td></tr>
<tr class="a">
<td align="left">schemaTargetNamespacePrefix</td>
<td align="left">$<a name="axis2.java2wsdl.schemaTargetNamespacePrefix">axis2.java2wsdl.schemaTargetNamespacePrefix</a></td>
<td align="left">Prefix, which is being associated with the schemas target namespace.</td></tr>
<tr class="b">
<td align="left">serviceName</td>
<td align="left">$<a name="axis2.java2wsdl.serviceName">axis2.java2wsdl.serviceName</a> Unqualified name of the input class.</td>
<td align="left">Name of the generated web service.</td></tr>
<tr class="a">
<td align="left">targetNamespace</td>
<td align="left">$<a name="axis2.java2wsdl.targetNamespace">axis2.java2wsdl.targetNamespace</a> Default namespace</td>
<td align="left">Target namespace of the generated WSDL.</td></tr>
<tr class="b">
<td align="left">targetNamespacePrefix</td>
<td align="left">$<a name="axis2.java2wsdl.targetNamespacePrefix">axis2.java2wsdl.targetNamespacePrefix</a></td>
<td align="left">Prefix, which is being associated with the target namespace.</td></tr></table></section>
        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2022
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>