<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/tigris.css" type="text/css">
<link rel="stylesheet" href="../../skin/mysite.css" type="text/css">
<link rel="stylesheet" href="../../skin/site.css" type="text/css">
<link media="print" rel="stylesheet" href="../../skin/print.css" type="text/css">
<title>WebServices - Axis</title>
</head>
<body bgcolor="white" class="composite">
<div id="banner">
<table width="100%" cellpadding="8" cellspacing="0" summary="banner" border="0">
<tbody>
<tr>
<td align="left">
<div class="groupLogo">
<a href="http://ws.apache.org/"><img border="0" class="logoImage" alt="The Apache WebServices Project" src="../../images/project-logo.jpg"></a>
</div>
</td><td align="right">
<div class="projectLogo">
<a href="http://ws.apache.org/axis/"><img border="0" class="logoImage" alt="The Apache Axis Project" src="../../images/axis.jpg"></a>
</div>
</td><td valign="top" rowspan="2" align="right" class="search">
<form target="_blank" action="http://www.google.co.jp/search" method="get">
<table summary="search" border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#a5b6c6" colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="8" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="ws.apache.org" name="sitesearch" type="hidden"><input value="ja" name="hl" type="hidden"><input value="UTF-8" name="ie" type="hidden"><input size="10" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="検索" type="submit">
<br>WS を検索
                          
                          
                      </td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="3"><img height="7" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td class="bottom-left-thick"></td><td bgcolor="#a5b6c6"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td class="bottom-right-thick"></td>
</tr>
</table>
</form>
</td>
</tr>
</tbody>
</table>
</div>
<table width="100%" cellpadding="0" cellspacing="0" border="0" summary="nav" id="breadcrumbs">
<tbody>
<tr class="status">
<td><a href="http://www.apache.org/">Apache</a> | <a href="http://ws.apache.org/">WS</a><a href=""></a></td><td id="tabs">
<div class="tab">
<span class="selectedTab"><a class="base-selected" href="../../index.html">WebServices-Axis</a></span>
</div>
</td>
</tr>
</tbody>
</table>
<table id="main" width="100%" cellpadding="8" cellspacing="0" summary="" border="0">
<tbody>
<tr valign="top">
<td id="leftcol">
<div id="navcolumn">
<div class="menuBar">
<div class="menu">
<span class="menuLabel">Axis</span>
 
<div class="menuItem">
<a href="../../index.html">はじめに</a>
</div>
 
<div class="menuItem">
<a href="../../news.html">お知らせ</a>
</div>

 
<div class="menuItem">
<a href="http://wiki.apache.org/ws/ja/axis">FAQ/Wiki</a>
</div>
 
<div class="menu">
<span class="menuLabel">活動に参加</span>
  
<div class="menuItem">
<a href="../../overview.html">概要</a>
</div>
  
<div class="menuItem">
<a href="../../cvs.html">CVS リポジトリ</a>
</div>
  
<div class="menuItem">
<a href="../../mail.html">メーリングリスト</a>
</div>
  
<div class="menuItem">
<a href="../../ref.html">リファレンスライブラリ</a>
</div>
  
<div class="menuItem">
<a href="../../bugs.html">バグ</a>
</div>
  
<div class="menuItem">
<a href="../../howtobuild.html">サイト構築方法</a>
</div>
 
</div>
 
<div class="menu">
<span class="menuLabel">Axis (Java)</span>
  
<div class="menuItem">
<a href="../../java/index.html">ドキュメント</a>
</div>
  
<div class="menuItem">
<a href="../../java/install.html">インストール</a>
</div>
  
<div class="menuItem">
<a href="../../java/user-guide.html">ユーザガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/developers-guide.html">開発者ガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/integration-guide.html">統合ガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/architecture-guide.html">アーキテクチャガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/reference.html">リファレンスガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/reading.html">読書ガイド</a>
</div>
  
<div class="menuItem">
<a href="../../java/requirements.html">要件</a>
</div>
 
</div>
 
<div class="menu">
<span class="menuLabel">Axis (C++)</span>
  
<div class="menuItem">
<a href="../../cpp/index.html">Axis C++ 最新版</a>
</div>
  
<div class="menuItem">
<a href="../../cpp/documentation.html">ドキュメント</a>
</div>
  
<div class="menuItem">
<a href="../../cpp/download.html">ダウンロード</a>
</div>
  
<div class="menuItem">
<a href="http://wiki.apache.org/ws/FrontPage/AxisCPP">Wiki ページ [英語]</a>
</div>
  
<div class="menuItem">
<a href="../../cpp/who.html">メンバ紹介</a>
</div>
  
</div>

<div class="menu">
<span class="menuLabel">ダウンロード</span>
  
<div class="menuItem">
<a href="../../releases.html">リリース</a>
</div>
  
<div class="menuItem">
<a href="../../interim.html">暫定版</a>
</div>
  
<div class="menuItem">
<a href="http://cvs.apache.org/viewcvs/ws-axis/">ソースコード [英語]</a>
</div>

</div>

<div class="menu">
<span class="menuLabel">翻訳</span>
  
<div class="menuItem">
<a href="http://ws.apache.org/axis/jp/">日本語</a>
</div>

</div>

<div class="menu">
<span class="menuLabel">関連プロジェクト</span>
  
<div class="menuItem">
<a href="http://ws.apache.org/wsif/">WSIF [英語]</a>
</div>
  
<div class="menuItem">
<a href="http://cvs.apache.org/viewcvs/*checkout*/ws-wsil/java/README.htm">WSIL [英語]</a>
</div>
  
<div class="menuItem">
<a href="http://www-124.ibm.com/developerworks/projects/wsdl4j/">WSDL4J [英語]</a>
</div>
  
<div class="menuItem">
<a href="http://www.uddi4j.org/">UDDI4J [英語]</a>
</div>

</div>

<div class="menu">
<span class="menuLabel">その他</span>
  
<div class="menuItem">
<a href="../../who.html">メンバ紹介</a>
</div>
  
<div class="menuItem">
<a href="../../contact.html">連絡先</a>
</div>
  
<div class="menuItem">
<a href="../../legal.html">法関連</a>
</div>
  
<div class="menuItem">
<a href="../../docs.html">メモ/ドキュメント</a>
</div>

</div>


</div>
</div>
</div>
</td><td>
<div id="bodycol">
<div class="app">
<div align="center">
<h1>WebServices - Axis</h1>
</div>
<div class="h3">
  
  


<div class="h3">
<h3>Axis-wsdl2java Task</h3>
</div>



<p>Create Java classes from local or remote WSDL.</p>


<div class="h4">
<h4>Description</h4>
</div>



<p>Create Java classes from local or remote WSDL. Mappings from namespaces to packages can be provided as nested &lt;mapping&gt; elements.</p>


<p>Proxy settings are taken from the java runtime settings of http.ProxyHost, http.ProxyPort, etc. The Ant task &lt;setProxy&gt; can set these. As well as the nested mapping elements, this task uses the file <span class="codefrag">NStoPkg.properties</span> in the project base directory for namespace mapping</p>


<p>This task does no dependency checking; files are generated whether they need to be or not. The exception to this is the Impl class, which is not
overwritten if it exists. This is a safety measure. However, all other classes are generated overwriting anything that exists.</p>


<p>The safe way to use this task is to have it generate the java source in a build directory, then have a &lt;copy&gt; task selectively copy the files you need into a safe location. Again, copying into the source tree is dangerous, but a separate build/src tree is safe. Then include this separate tree in the &lt;javac&gt; task's src attribute to include it in the build. Implement your own implementation classes of the server stub and the test cases using the generated templates. If you want to add methods to autogenerated data types, consider subclassing them, or write helper classes.</p>


<p>Tip: if you &lt;get&gt; the wsdl, and use the &lt;filesmatch&gt; condition to compare the fetched wsdl with a catched copy, you can make the target that calls the axis-wsd2ljava task conditional on the WSDL having changed. This stops spurious code regeneration and follow-on rebuilds across the java source tree.</p>




<div class="h4">
<h4>Parameters</h4>
</div>



<table class="ForrestTable" cellspacing="1" cellpadding="4">
  
<tr class="b">
    
<th colspan="1" rowspan="1">Attribute</th>
    <th colspan="1" rowspan="1">Description</th>
    <th colspan="1" rowspan="1">Type</th>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">all</td>
    <td colspan="1" rowspan="1">flag to generate code for all elements, even unreferenced ones default=false;</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">debug</td>
    <td colspan="1" rowspan="1">flag for debug output; default=false</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">deployscope</td>
    <td colspan="1" rowspan="1">add scope to deploy.xml: "Application", "Request", "Session" optional;</td>
    <td colspan="1" rowspan="1">java.lang.String</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">factory</td>
    <td colspan="1" rowspan="1">name of the Java2WSDLFactory class for extending WSDL generation functions</td>
    <td colspan="1" rowspan="1">java.lang.String</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">helpergen</td>
    <td colspan="1" rowspan="1">Turn on/off Helper class generation; default is false</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">namespacemappingfile</td>
    <td colspan="1" rowspan="1">set the mapping file. This is a properties file of package=namespace order. Optional, default is to look for a file called NStoPkg.properties in the project directory.</td>
    <td colspan="1" rowspan="1">java.io.File</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">noimports</td>
    <td colspan="1" rowspan="1">only generate code for the immediate WSDL document, and not imports; default=false;</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">output</td>
    <td colspan="1" rowspan="1">output directory for emitted files</td>
    <td colspan="1" rowspan="1">java.io.File</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">serverside</td>
    <td colspan="1" rowspan="1">emit server-side bindings for web service; default=false</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">skeletondeploy</td>
    <td colspan="1" rowspan="1">deploy skeleton (true) or implementation (false) in deploy.wsdd. Default is false. Assumes server-side="true".</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">testcase</td>
    <td colspan="1" rowspan="1">flag for automatic Junit testcase generation default is false</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">timeout</td>
    <td colspan="1" rowspan="1">timeout in milliseconds for URL retrieval; default is 45 seconds. Set this to -1 to disable timeouts altogether: other negative values are not allowed)</td>
    <td colspan="1" rowspan="1">long</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">typemappingversion</td>
    <td colspan="1" rowspan="1">the default type mapping registry to use. Either 1.1 or 1.2. Default is 1.1</td>
    <td colspan="1" rowspan="1">org.apache.axis.tools.ant.wsdl.TypeMappingVersionEnum</td>
  
</tr>
  
<tr class="b">
    
<td colspan="1" rowspan="1">url</td>
    <td colspan="1" rowspan="1">URL to fetch and generate WSDL for. Can be remote or a local file.</td>
    <td colspan="1" rowspan="1">java.lang.String</td>
  
</tr>
  
<tr class="a">
    
<td colspan="1" rowspan="1">verbose</td>
    <td colspan="1" rowspan="1">flag for verbose output; default=false</td>
    <td colspan="1" rowspan="1">boolean</td>
  
</tr>

</table>




<div class="h4">
<h4>Parameters as nested elements</h4>
</div>



<p>mapping (org.apache.axis.tools.ant.wsdl.NamespaceMapping)<br>add a mapping of namespaces to packages</p>

<p>mappingset (org.apache.axis.tools.ant.wsdl.MappingSet)<br>add a mapping of namespaces to packages</p>





  

<div id="pdf" align="right">
<a href="axis-wsdl2java.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br>
          PDF</a>
</div>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<div id="footer">
<table summary="footer" cellspacing="0" cellpadding="4" width="100%" border="0">
<tbody>
<tr>
<td colspan="2">
<div align="center">
<div class="copyright">
              Copyright &copy; 2000-2005&nbsp;The Apache Software Foundation. All rights reserved.
            </div>
</div>
</td>
</tr>
<tr>
<td align="left"></td><td align="right">
<div align="right">
<div class="credit"></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
