Hitachi

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


9.3 Java2WSDDコマンド(サービスデプロイ定義の生成)

サービスデプロイ定義(server-config.xml)の生成は,次のコマンドを使用します。

形式
Java2WSDD.bat [オプション群] <対象となるクラス名>
表9‒8 Java2WSDD(server-config.xml)コマンドのオプション一覧

オプション

意味

備考

-h

ヘルプが表示されます。

-o

server-config.xmlの出力先ディレクトリを指定します。

省略時:カレントディレクトリが設定されます。

-s

serviceElement名を指定します(service要素のname属性)。

省略時:クラス名が設定されます。

-p

provider種別名を指定します。RPC,EJBまたはC4MSG(メッセージング)で指定します。

省略時:RPCが設定されます。

-d

deployScopeをApplication,Request,Sessionのどれかで指定します。

省略時:Requestが設定されます。

-u

use属性をLITERALまたはENCODEDで指定します。大文字/小文字は区別されません。

省略時:LITERALが設定されます。

-T

typeMappingVersionを1.1または1.2で指定します。

typeMappingVersion値で,Javaクラスから生成されるWSDL内のデータ型が異なります。詳細は「9.1 Java2WSDLコマンド(WSDLの生成)」を参照してください。

省略時:1.1が設定されます。

-z

WSDLのバインディングスタイルをRPCまたはDOCUMENTで指定します。大文字/小文字は区別されません。

省略時:RPCが設定されます。

-m

対象となるメソッドを空白またはコンマ(,)区切りで指定します。

省略時:すべてのメソッドが対象になります。

RPC用

-x

非対象メソッドを空白またはコンマ(,)区切りで指定します。

省略時:非対象メソッドは設定されません。

RPC用

-B

EJBのBeanクラス名を指定します。

EJB用

省略不可

-H

EJBのホームインタフェースクラス名を指定します。

EJB用

省略不可

-J

JNDI名前空間を指定します。

EJBHomeオブジェクトリファレンスのJNDI名前空間を次のどちらかの方式で指定します。

・JNDI名前空間の直接指定します。

(例)HITACHI_EJB/SERVERS/MyServer/EJB/UserInfo/UserInfoBean

・ネーミング機能で指定します。

(例)java:comp/env/ejb/UserInfoBean

指定値の詳細は,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」を参照してください。

EJB用

省略不可

-C

CORBA Naming ServiceへアクセスするためのURLを指定します。

省略時:corbaname::localhost:900が設定されます。

EJB用

-S

SOAPサービスにSOAPヘッダ解釈処理を実装している場合はtrue,実装していない場合はfalseを指定します。

省略時:falseが設定されます。

C4MSG(メッセージング)用

終了コード

0:正常終了

1:異常または警告終了

メッセージ

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

注意事項
  • 生成されたserver-config.xmlは編集しないでそのままご使用ください。

  • EJBプロバイダ用のserver-config.xmlを生成する場合,class-of-portTypeにはインタフェースクラスを指定してください。

  • -Sオプションの指定値による動作について

    SOAPヘッダ項目の解釈処理の実装とは次の処理のことです。

    呼び出されるSOAPサービスが最終送付先の場合:

    actor属性値がSOAPサービス自身を示すURIであり,かつmustUnderstand属性値が"1"である全ヘッダ項目に関する処理を実装しています。

    呼び出されるSOAPサービスが仲介者の場合:

    actor属性値がSOAPサービス自身を示すURIであり,かつmustUnderstand属性値が"1"である全ヘッダ項目に関して処理し,そのヘッダ項目を削除する処理を実装しています。

    処理できない場合は,C4Faultをスローする処理を実装しています。

    false:

    SOAPヘッダ内のmustUnderstand属性が"1"の場合,サービスを呼び出さないでC4Faultを返します。mustUnderstand属性が"0"または指定がない場合はサービスを呼び出します。

    true:

    呼び出されるサービスは上記のSOAPヘッダの解釈処理を実装しなければなりません。

  • EJBプロバイダ用のserver-config.xmlを生成する場合,<Application Serverのインストールフォルダ>/CC/client/lib/j2ee-javax.jarをクラスパスに追加してください。クラスパスが通っていない場合,KDCCC0011-Eエラーが発生する場合があります。

  • -zオプションでDOCUMENT,-uオプションでENCODEDの組み合わせは指定できません。

  • -pオプションにEJBを指定しても,EJBインタフェースを指定しなかった場合に出力されるKDCCC0226-Eメッセージが,KDCCC0011-Eメッセージのdetailsに出力されます。

  • Java2WSDDコマンドを実行する場合は,指定するクラスへのクラスパスを環境変数CLASSPATH に設定してください。CLASSPATHの設定がない場合,Java2WSDDコマンドは,カレントディレクトリをクラスパスに設定し,指定されたクラスを検索します。