wsgen(1)

名前
wsgen - JAX-WS 2.0 ベータ

    wsgen ツールは、JAX-WS Web サービスで使用される JAX-WS ポータブルアーティファクトを生成します。このツールは、サービスエンドポイント実装クラス (SEI) を読み取り、Web サービスの配備と呼び出しに必要なすべてのアーティファクトを生成します。

形式

wsgen [options] <SEI>

オプション

次の表に、wsgen のオプションを示します。

表 1-1 wsgen のオプション

オプション | 詳細
-classpath <path> | 入力クラスファイルの検索場所を指定します
-cp <path> | -classpath <path> と同じ |
-d <directory> | 生成される出力ファイルを格納する場所を指定する
-extension | ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可性があります |
-help | ヘルプを表示します |
-keep | 生成されたファイルを保持します |
-r <directory> | 常に -wsdl オプションと組み合わせて使用します。WSDL などの生成されたリソースファイルの格納場所を指定します |
-s <directory> | 生成されるソースファイルを格納する場所を指定する |
-verbose | コンパイラが実行している処理に関するメッセージを出力します |
-version | バージョン情報を出力します。このオプションを使用した場合、バージョン情報が出力されるだけです。通常の処理は実行されません。 |
-wsdl[:protocol] | wsgen はデフォルトでは WSDL ファイルを生成しません。このフラグは省略可能ですが、指定した場合は wsgen が WSDL ファイルを生成するようになります。このフラグは通常、エンドポイントの配備前に開発者が WSDL を参照できるようにするためだけに使用されます。protocol は省略可能であり、wsdl:binding で使用すべきプロトコルを指定するために使用されます。有効なプロトコルは次のとおりで す。 soap1.1 と Xsoap1.2。デフォルトは soap1.1 です。Xsoap1.2 は標準ではないた め、-extension オプションと組み合わせないと使用できません。 |
-servicename <name> | 常に -wsdl オプションと組み合わせて使用します。WSDL 内で生成されるべき wsdl:service の名前を指定するために使用します。例 : -servicename "{http://mynamespace/}MyService" |
-portname <name> | 常に -wsdl オプションと組み合わせて使用します。WSDL 内で生成されるべき wsdl:port の名 前を指定するために使用します。例 : -portname "{http://mynamespace/}MyPort" |

  Ant タスク

wsgen ツールには、このツール用の Ant タスクが付属しています。この Ant タスクがサポートする属性や要素を、次に示します。

    <wsgen
         sei="..."
         destdir="directory for generated class files"
         classpath="classpath" | cp="classpath"
         resourcedestdir="directory for generated resource files such as WSDLs"
         sourcedestdir="directory for generated source files"
         keep="true|false"
         verbose="true|false"
         genwsdl="true|false"
         protocol="soap1.1|Xsoap1.2"
         servicename="..."
         portname="...">
         extension="true|false"
         <classpath refid="..."/>
     </wsgen>

属性 | 説明 | コマンド行
sei | サービスエンドポイント実装クラスの名前 | SEI
destdir | 生成される出力クラスを格納する場所を指定します | -d
classpath | 入力クラスファイルの検索場所を指定します | -classpath
cp | -classpath と同じ | -cp
resourcedestdir | 常に -wsdl オプションと組み合わせて使用します。WSDL などの生成されたリソースファイルの格納場所を指定します | -r
sourcedestdir | 生成されるソースファイルを格納する場所を指定します | -s
keep | 生成されたファイルを保持します | -keep
verbose | コンパイラが実行している処理に関するメッセージを出力します | -verbose
genwsdl | WSDL ファイルを生 成すべきかどうかを指定します | -wsdl
protocol | genwsdl と組み合わせて使用します。wsdl:binding で使用するプロトコルを指定します。有効な値は「soap1.1」と「Xsoap1.2」で、デフォルトは「soap1.1」です。「Xsoap1.2」は標準ではないため、-extensions オプションと組み合わせないと使用できません | -wsdl:soap11
servicename | genwsdl オプションと組み合わせて使用します。生成される WSDL の wsdl:service の名前を指定するために使用します。例 : servicename="{http://mynamespace/}MyService" | -servicename
portname | genwsdl オプションと組み合わせて使用します。生成される WSDL の wsdl:portname の名前を指定するために使用します。例 : portname="{http://mynamespace/}MyPort" | -servicename
extension | ベンダー拡張 (仕様で規定されていない機能) を許可します。拡張を使用すると、アプリケーションの移植性が失われたり、ほかの実装との相互運用が行えなくなる可能性があります | -extension

classpath 属性は、 Path-like Structure
(http://ant.apache.org/manual/using.html#path) であり、入れ子になった <classpath> 要素を使って設定することもできます。このタスクを使用するには、次の <taskdef> 要素をプロジェクトに追加しておく必要があります。

  <taskdef name="wsgen" classname="com.sun.tools.ws.ant.WsGen">
      <classpath path="jaxws.classpath"/>
  </taskdef>

ここで、jaxws.classpath は、JAX-WS ツールが必要とするクラスのリストを含む、ビルド環境内の別の場所に定義された Path-like Structure
(http://ant.apache.org/manual/using.html#path) への参照です。

例

<wsgen
      resourcedestdir="${wsdl.dir}"
      sei="fromjava.server.AddNumbersImpl">
      <classpath refid="compile.classpath"/>
</wsgen>