|
|
WebOTX Manual V10.2 (第4版) 目次を表示 |
> wsimport.bat [option] <wsdl>Unixの場合:
$ wsimport.sh [option] <wsdl><wsdl>にはWebサービスのwsdlを指定します。
<wsimport wsdl="..." destdir="directory for generated class files" sourcedestdir="directory for generated source files" keep="true|false" extension="true|false" verbose="true|false" version="true|false" wsdlLocation="..." catalog="catalogfile" package="packagename" <bindingdir="..." includes="..." /> </wsimport>各属性に指定する値は後述のwsimportオプション一覧を参照してください。
<taskdef name="wsimport" classname="com.nec.webotx.webservice.tools.ws.ant.WsImport"> <classpath path="jaxws.classpath"/> </taskdef>jaxws.classpathには、build.xml内で定義したwosv-ws.jarおよびJDK付属のtools.jarを含むクラスパス定義への参照を指定してください。
wsimportオプション一覧
| コマンドラインオプション | Ant属性 | 説明 |
|---|---|---|
| <wsdl> | wsdl | サービスのwsdlファイルを指定します。 |
| -d <directory> | destdir | 生成される出力ファイルの格納先を指定します。 |
| -b <path> | binding | 外部のJAX-WSまたはJAXBのバインディングファイルを指定します。ファイルごとに-bが必要となります。 |
| -B <jaxbOption> | xjcarg | JAXBスキーマコンパイラに渡すオプションを指定します。 |
| -catalog | catalog | 外部エンティティ参照を解決するためのカタログファイルを指定します。 |
| -extension | extension | (仕様で定義されていない)ベンダ固有の拡張機能を許可します。現在のところ、ベンダ拡張の非標準SOAP1.2バインディングを使用する際に指定します。 |
| -help | - | ヘルプを表示します。 |
| -httpproxy: <host>:<port> | - | HTTPプロキシサーバを指定します。デフォルトのポートは8080です。 |
| -keep | keep | 生成したソースファイルを削除しません。 |
| -p | package | ターゲットパッケージを指定します。このオプションを指定した場合、すべてのwsdl/スキーマバインディングのカスタマイズや、仕様で規定されているデフォルトのパッケージ名アルゴリズムより、この値が優先されます。 |
| -s <directory> | sourcedestdir | 生成したソースファイルの格納先を指定します。 |
| -target | target | 出力コードが準拠するJAX-WS仕様のバージョンを指定します。 |
| -verbose | verbose | コンパイラの出力メッセージを表示します。 |
| -version | - | バージョン情報を表示します。 |
| -wsdllocation <location> | wsdllocation | WebServiceClientアノテーションの.wsdlLocationに設定する値を指定します。 |
> wsgen.bat [option] <SEI>Unixの場合:
$ wsgen.sh [option] <SEI><SEI>にはサービスエンドポイントの実装クラスを指定します。
<wsgen sei="..." destdir="directory for generated class files" classpath="classpath" | cp="classpath" resourcedestdir="directory for generated resource files such asWSDLs" 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>各属性に指定する値は後述のwsgenオプション一覧を参照してください。
<taskdef name="wsgen" classname="com.nec.webotx.webservice.tools.ws.ant.WsGen"> <classpath path="jaxws.classpath"/> </taskdef>jaxws.classpathには、build.xml内で定義したwosv-ws.jarおよびJDK付属のtools.jarを含むクラスパス定義への参照を指定してください。
wsgenオプション一覧
| コマンドラインオプション | Ant属性 | 説明 |
|---|---|---|
| <SEI> | sei | サービスエンドポイントの実装クラス名を指定します。 |
| -classpath <path> | classpath | 入力クラスファイルの検索場所を指定します。 |
| -cp <path> | cp | -classpathと同じです。 |
| -d <directory> | destdir | 生成される出力ファイルの格納先を指定します。 |
| -extension | extension | (仕様で定義されていない)ベンダ固有の拡張機能を許可します。現在のところ、-wsdl:Xsoap1.2を使用する際に必要なオプションとなります。 |
| -help | - | ヘルプを表示します。 |
| -keep | keep | 生成したソースファイルを削除しません。 |
| -r <directory> | resourcedestdir | WSDL等のリソースファイルの格納先を指定します。常に-wsdlオプションと組み合わせて指定します。 |
| -s <directory> | sourcedestdir | 生成したソースファイルの格納先を指定します。 |
| -verbose | verbose | コンパイラの出力メッセージを表示します。 |
| -version | - | バージョン情報を表示します。 |
| -wsdl[:protocol] | protocol | wsdlを生成します(デフォルトでは生成しません)。protocolにはwsdl:bindingで使用するプロトコルを指定します。指定できるプロトコルは"soap1.1"(デフォルト)および"Xsoap1.2"です。 |
| -servicename <name> | servicename | wsdlに出力されるwsdl:serviceの名前を指定します。常に-wsdlオプションと組み合わせて指定します。 |
| -portname <name> | portname | wsdlに出力されるwsdl:portの名前を指定します。常に-wsdlオプションと組み合わせて指定します。 |
<apt verbose="true|false" classpath="classpath" destdir="directory for generated class files" sourcedestdir="directory for generated source files" nocompile="true|false" print="true|false" factorypath="<path>" factory="name of AnnotationProcessorFactory to use" <option key="keyname" value="keyvalue"/> <source ... >... </source> </apt>各属性に指定する値は後述のaptオプション一覧を参照してください。
<taskdef name="apt" classname="com.nec.webotx.webservice.tools.ws.ant.Apt"> <classpath path="jaxws.classpath"/> </taskdef>jaxws.classpathには、build.xml内で定義したwosv-ws.jarおよびJDK付属のtools.jarを含む、クラスパス定義への参照を指定します。
aptオプション一覧
| コマンドラインオプション | Ant属性 | 説明 |
|---|---|---|
| -source | source | サービスエンドポイントの実装クラスのソースファイルを指定します。 |
| -classpath | classpath | 入力クラスファイルの検索場所を指定します。 |
| -cp | cp | -classpathと同じです。 |
| -d | destdir | 生成される出力ファイルの格納先を指定します。 |
| -s | sourcedestdir | 生成したソースファイルの格納先を指定します。 |
| -A[key[=value]] | option | アノテーションプロセッサに渡されるオプションです。 |
| -nocompile | nocompile | ソースファイルをコンパイルしません。 |
| 指定した型のテキスト表示を出力します。 | ||
| -factorypath | factorypath | AnnotationProcessorFactoryの検索場所を指定します。 |
| -factory | factory | 使用するAnnotationProcessorFactoryの名前を指定します。デフォルトの検索処理をバイパスします。 |
Memo
JAX-RPCは旧互換のための機能です。
> wscompile <オプション> <設定ファイル>
| オプション | 説明 |
|---|---|
| -define | WSDLを生成する場合に指定します。 |
| -gen (または-gen:client) | クライアントサイドのJavaのコードを生成する場合に指定します。 |
| -gen:server | サーバサイドのJavaのコードを生成する場合に指定します。 |
| -gen:both | クライアントサイド、サーバサイド両方のJavaのコードを生成する場合に指定します。 |
| -d | 生成ファイルの出力場所を指定します。-nd、-sを指定しない場合は、このオプションで指定した場所にマッピングファイル以外のすべてのファイルが生成されます。生成場所として指定可能なディレクトリは、すでに存在しているものに限ります。 |
| -nd | WSDLファイルの生成場所を指定します。 |
| -s | Javaソースファイルの生成場所を指定します。 |
| -keep | Javaソースファイルを生成します。デフォルトでは、ソースファイル自体が生成されずにコンパイル結果のみが生成されます。 |
| -mapping ファイルパス | 指定されたファイルパスにWSEE仕様に準拠したマッピングファイルを生成します。 |
| -f:wsi | WS-Iに対応したJavaのコードやWSDLを生成します。 |
| -f:documentliteral | SOAPメッセージ形式をdocument/literalで生成します。 |
| -f:rpcliteral | SOAPメッセージ形式をrpc/literalで生成します。 |
| -f:amenableSequence | WSDL のmessage-part要素の順番でSOAP メッセージを構築します。このオプションは-f:wsiと同時に利用することで有効になります。 |
| -f:ignoreFilePathCheck | ファイルパス長のチェック機能を無視します。ファイルパス長チェック機能の有効、無効化はWindows版のみ対応しています。 |
| -f:useonewayoperations | 一方向通信を行います。SOAPメッセージ形式がRPCではvoidのメソッドについて、Documentでは全てのメソッドが対象になります。Documentのとき、ユーザ定義の例外は宣言できません。 |
<?xml version="1.0" encoding="UTF-8" ?>
<configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
<service name="MyHelloService"
targetNamespace="urn:Foo"
typeNamespace="urn:Foo"
packageName="helloservice">
<interfacename="helloservice.HelloIF" />
</service>
</configuration>
service要素のname属性にはWebサービス名を、targetnamespace属性にはWSDLの名前空間URIを、typeNamespaceにはschema要素の名前空間URIを、packageNameにはJavaパッケージ名をそれぞれ指定します。interface要素には、WSDLを生成するために使用するコンパイル済みのJavaインタフェースクラスを指定します。
Caution
WSDLを生成するために使用するJavaインタフェースは、java.rmi.Remoteを継承する必要があります。また、インタフェース内で宣言されているすべてのメソッドはjava.rmi.RemoteExceptionをスローしなければなりません。
<?xml version="1.0" encoding="UTF-8"?> <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config"> <wsdl location="test.wsdl" packageName="test"/> </configuration>wsdl要素のlocation属性にはWSDLファイルを指定し、packageName属性には生成するJavaクラスのパッケージ名を指定します。
> wscompile -define -d C:\tmpconfig.xml
> wscompile -gen -d C:\tmp -keepconfig.xml