Cosminexus V9 アプリケーションサーバ SOAPアプリケーション開発の手引

[目次][用語][索引][前へ][次へ]

9.1 Java2WSDLコマンド(WSDLの生成)

WSDLの生成は次のコマンドを使用します。

形式
Java2WSDL.bat -l <サービスロケーション> [その他のオプション群]<対象となるクラス名>

必須の-lオプションおよび任意に指定するオプションの一覧を示します。

表9-1 Java2WSDLコマンドの-lオプション(必須)

オプション 意味
-l
サービスロケーションを指定します(service要素のaddress location属性)。サービスロケーションの指定方法については,「3.3.1 サービスロケーションの指定」を参照してください。

表9-2 Java2WSDLコマンドのオプション一覧(任意)

オプション 意味
-h
ヘルプが表示されます。
-o
WSDLの出力先ファイル名を指定します。
省略時:"servicePort名.wsdl"の名称でカレントディレクトリに生成されます。
-P
portType名を指定します(portType要素のname属性)。
省略時:指定クラス名が設定されます。
-b
binding名を指定します(binding要素のname属性)。
省略時:"servicePort名"+"SOAPBinding"が設定されます。
-S
serviceElement名を指定します(service要素のname属性)。
省略時:"portType名"+"Service"が設定されます。
-s
servicePort名を指定します(service要素内のport要素のname属性)。
省略時:サービス名(サービスロケーションの最終ノード名)が設定されます。
-n
targetNamespaceを指定します。
省略時:クラスのパッケージ名から生成されます。
クラスにパッケージ名の指定がない場合は,"http://DefaultNamespace"が設定されます。
-p
パッケージ名と名前空間の関係をpackage=namespaceの形式で指定します(名前空間の変更)。
-m
対象となるメソッドを空白またはコンマ(,)区切りで指定します。
省略時:すべてのメソッドが対象になります。
-w
WSDLの生成モードをAll,Interface,Implementationのどれかで指定します。
省略時:Allが設定されます。
-x
非対象メソッドを空白またはコンマ(,)区切りで指定します。
省略時:非対象メソッドは設定されません。
-T
TypeMappingVersionを1.1または1.2で指定します。
typeMappingVersion値によって,Javaクラスから生成されるWSDL内のデータ型が異なります。詳細は次の表を参照してください。
省略時:1.1が設定されます。
-A
soapActionの値を指定します。DEFAULTを指定した場合は""を設定します。NONEを指定した場合,soapActionは生成されません。
省略時:DEFAULTが設定されます。
-z
WSDLのバインディングスタイルをRPCまたはDOCUMENTで指定します。大文字/小文字は区別されません。
省略時:RPCを設定します。
DOCUMENTを指定した場合は,wrapped形式のWSDLが生成されます。
-u
use属性をLITERALまたはENCODEDで指定します。大文字/小文字は区別されません。
省略時:LITERALが設定されます。

注※
wrapped形式については,「3.3.3(3) DOCUMENT/LITERALを指定した場合」を参照してください。

表9-3 typeMappingVersion値とデータ型の関係


クラス名
WSDL内のデータ型
1.1指定時 1.2指定時
データ型 名前空間名 データ型 名前空間名
java.lang.String string xsd string soapenc
java.lang.Boolean boolean xsd boolean soapenc
java.lang.Double double xsd double soapenc
java.lang.Float float xsd float soapenc
java.lang.Integer int xsd int soapenc
java.math.BigInteger integer xsd integer soapenc
java.math.BigDecimal decimal xsd decimal soapenc
java.lang.Long long xsd long soapenc
java.lang.Short short xsd short soapenc
java.lang.Byte byte xsd byte soapenc
byte[] base64Binary xsd base64 soapenc

(凡例)
xsdは名前空間URIが"http://www.w3.org/2001/XMLSchema"であることを示します。
soapencは名前空間URIが"http://schemas.xmlsoap.org/soap/encoding/"であることを示します。

終了コード
0:正常終了
1:異常または警告終了

メッセージ
メッセージの詳細については,マニュアル「アプリケーションサーバ メッセージ(構築/運用/開発用)」の開発支援コマンドによって出力されるメッセージの記述を参照してください。

注意事項
  • 対象となるメソッドの引数または戻り値に,ユーザ定義のデータ型クラスを含む場合,WSDL内でユーザ定義のデータ型クラスを表す型が定義されますが,このときの要素の並び順は,ユーザ定義のデータ型クラス内でのフィールドの順序に関係なく,アルファベット順となります。
  • -zオプションでDOCUMENT,-uオプションでENCODEDの組み合わせは指定できません。
  • Java2WSDLコマンドを実行してJavaインタフェースからWSDLを生成する場合,Javaインタフェースのメソッドのパラメタ名は,WSDLに「inXX」(XXは整数)の名称でマッピングされます。生成例については,「3.3.9(2) Javaインタフェースのメソッドのパラメタ名と生成されるWSDLの対応」を参照してください。
  • Java2WSDLコマンドを実行する場合,指定するJavaインタフェースへのクラスパスを環境変数CLASSPATHに設定してください。CLASSPATHの設定がない場合,Java2WSDLコマンドは,カレントディレクトリをクラスパスに設定し,指定されたJavaインタフェースを検索します。