Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 受付・アダプタ定義編

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

3.3.2 SessionBeanアダプタを定義する

SessionBeanアダプタの定義方法について説明します。SessionBeanアダプタは,サービスアダプタ定義画面で定義できます。

<この項の構成>
(1) サービス部品の電文フォーマット
(2) データ変換
(3) JNDI名前空間に登録されている呼び出すサービス部品の名称の指定
(4) ユーザ定義クラス(JARファイル)の設定
(5) RMI-IIOPスタブおよびインターフェースの取得
(6) サービスアダプタ定義画面での操作
(7) クライアント定義ファイルの設定

(1) サービス部品の電文フォーマット

SessionBeanの場合,EARファイルから自動作成された電文フォーマット定義ファイルが,サービス部品の電文フォーマット定義ファイルとなります。そのため,サービス部品の電文フォーマットを設定する必要はありません。

(2) データ変換

サービスリクエスタの電文の形式と,サービスアダプタが呼び出すサービス部品の電文の形式が異なる場合,データ変換が必要です。

要求電文のデータ変換を行う場合,サービスアダプタ定義画面で標準電文にサービスリクエスタから入力される電文を設定し,データ変換定義画面でデータ変換を定義します。応答電文のデータ変換を行う場合,サービス部品から返される電文に標準電文を設定し,データ変換定義画面でデータ変換を定義します。

データ変換の詳細については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「6. データ変換の定義」を参照してください。

(3) JNDI名前空間に登録されている呼び出すサービス部品の名称の指定

サービスアダプタ定義画面では,JNDI名前空間に登録されている呼び出すサービス部品の名称を指定します。リモート呼び出しとなるようにアドレスを指定してください。サービス部品(SessionBean)のローカル呼び出しはできません。指定例を次に示します。

JNDI名前空間に登録されている名称については次の個所を参照してください。

(4) ユーザ定義クラス(JARファイル)の設定

SessionBeanの場合,スタブを利用してサービス部品を呼び出すために,ユーザ定義クラス(JARファイル)を設定する必要があります。

なお,サービスアダプタ定義画面(SessionBeanの詳細画面)でJARファイルを設定するとき,選択するファイルの拡張子は,すべて小文字の「jar」としてください。

また,JARファイルとして次に示すファイル名は設定しないでください。

上記のファイル名を設定した場合,警告メッセージが表示されます。警告メッセージが表示された場合,上記のファイル名をユーザ定義クラスから削除します。そのあと,上記のファイル名を変更して,再度設定してください。

(5) RMI-IIOPスタブおよびインターフェースの取得

J2EEサーバのcjgetstubsjarコマンドを使ってRMI-IIOPスタブおよびインターフェースを取得します。cjgetstubsjarコマンドの詳細について,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjgetstubsjar(アプリケーションのRMI-IIOPスタブおよびインタフェースの取得)」を参照してください。

(6) サービスアダプタ定義画面での操作

SessionBeanアダプタを定義する場合の手順を次に示します。

  1. サービスアダプタ定義画面を表示します。
    サービスアダプタ定義画面の表示方法については,「3.3.1(4) サービスアダプタ定義画面の表示」を参照してください。
  2. サービス部品制御情報の[サービス名],[サービスID],および[最大インスタンス数]を必要に応じて編集します。
  3. サービス部品制御情報の[アドレス]を指定します。
    [アドレス]には,JNDI名前空間に登録されている呼び出すサービス部品の名称を取得して,入力します。JNDI名前空間に登録されている名称については次の個所を参照してください。
  4. サービス部品制御情報の[オペレーション]のドロップダウンリストから,編集したいオペレーションを選択します。
  5. オペレーション情報に表示されている内容を確認します。
  6. サービス部品制御情報の[システム例外をフォルトに変換する]チェックボックスを必要に応じてチェックします。
  7. 要求電文について,手順8.から手順18.までを実施します。
  8. 次に示す操作をします。
    標準電文のフォーマットを指定する場合
    手順9.〜12.を実施して,手順13.に進みます。
    標準電文のフォーマットを指定しない場合
    手順13.に進みます。
  9. 標準電文の[使う]チェックボックスをチェックします。
  10. 標準電文の[フォーマットID]を指定します。
  11. 標準電文の[参照]ボタンをクリックして,[電文フォーマット]に標準電文のフォーマットを指定します。
    なお,外部のXMLスキーマを参照している電文フォーマットを設定する場合,必ずルートスキーマに当たるファイルを設定してください。ルートスキーマから参照される外部のXMLスキーマファイルは,自動的に取り込まれます。
    指定できる電文フォーマットの形式については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「2.6.5 XMLスキーマの適用範囲」を参照してください。
  12. 標準電文の[表示]ボタンをクリックします。
    標準電文のフォーマットが表示されます。必要に応じて指定した標準電文のフォーマットを確認してください。
  13. サービス部品電文の[フォーマットID]を指定します。
  14. サービス部品電文の[表示]ボタンをクリックします。
    サービス部品電文のフォーマットが表示されます。必要に応じてサービス部品電文のフォーマットを確認してください。
  15. 次に示す操作をします。
    標準電文の[使う]チェックボックスをチェックした場合
    手順16.〜18.を実施して,手順19.に進みます。
    標準電文の[使う]チェックボックスをチェックしない場合
    手順19.に進みます。
  16. データ変換定義のファイル名を入力します。
  17. [編集]ボタンをクリックします。
    データ変換定義画面が表示されます。
    なお,初めて定義する場合は,[ルート要素選択]ダイアログが表示されます。
    また,電文フォーマットを変更した場合は,電文フォーマットの変更を反映するかを確認するダイアログが表示されます。電文フォーマットを変更した場合の手順は,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「6.3.2 電文フォーマットを変更した場合の定義手順」を参照してください。
  18. 標準電文とサービス部品電文の内容をマッピングします。
  19. 応答電文についても同様に,手順8.から手順18.までを実施します。
  20. サービスアダプタ定義(詳細)タブをクリックします。
  21. [追加]ボタンをクリックして,該当するユーザ定義クラスを追加します。
    ユーザ定義クラスは,「3.3.2(5) RMI-IIOPスタブおよびインターフェースの取得」で取得したスタブおよびインターフェースのJARファイルを指定します。

(7) クライアント定義ファイルの設定

Webサービスと同様に,クライアント(サービスリクエスタ)側の動作を制御するクライアント定義ファイルを設定します。

クライアント定義ファイルは,必要に応じて,次のどちらかの方法で設定します。

クライアント定義ファイルの設定は任意です。クライアント定義ファイルを設定しない場合はテンプレートファイルの内容がそのまま使用されます。

(a) 設定手順(テンプレートファイルを編集する場合)

テンプレートファイルを編集する場合の設定手順を示します。

  1. サービスアダプタ定義画面(詳細)の[クライアント定義ファイル]で,[編集]ボタンをクリックします。
    クライアント定義ファイルを編集するためのエディタが起動します。
  2. エディタ上でクライアント定義ファイルを編集します。
  3. Eclipseのメニューから[ファイル]−[保管]を選択し,定義内容を保存します。
(b) 設定手順(新規に作成してテンプレートファイルを上書きする場合)

新規に作成してテンプレートファイルを上書きする場合の設定手順を示します。

  1. テキストエディタなどで,「c4webcl.properties」というファイル名称でクライアント定義ファイルを作成します。
    「c4webcl.properties」はすべて小文字で入力します。
  2. サービスアダプタ定義画面(詳細)の[クライアント定義ファイル]で,[参照]ボタンをクリックし,作成したクライアント定義ファイルを指定します。
(c) 設定内容

クライアント定義ファイルの設定内容については,マニュアル「アプリケーションサーバ SOAPアプリケーション開発の手引」の「10.3 クライアント定義ファイルの設定」を参照してください。

なお,SessionBeanアダプタの場合,クライアント定義ファイルに設定できる項目とできない項目があります。SessionBeanアダプタの場合に設定できるクライアント定義ファイルの項目を次の表に示します。

表3-2 クライアント定義ファイルの設定項目

キー名称 内容 設定可否
c4web.logger.log_level トレースファイル出力の重要度
c4web.logger.aplog_level アプリケーションログ出力の重要度
c4web.logger.aplog_error_record 異常発生時のアプリケーションログ出力
c4web.logger.log_file_dir トレースファイルおよびアプリケーションログの出力先ディレクトリ
c4web.logger.log_file_num トレースファイルの面数
c4web.logger.log_file_size トレースファイルのサイズ
c4web.logger.aplog_file_num アプリケーションログの面数
c4web.logger.aplog_file_size アプリケーションログのサイズ
c4web.logger.log_file_prefix トレースファイル,アプリケーションログのプリフィックス ×
c4web.common.do_multirefs 多重参照(実行時オプション) ×
c4web.common.send_xsi_types データ型定義(実行時オプション) ×
c4web.application.app_maintainsession HTTPセッションの維持(実行時オプション) ×
c4web.application.proxy_host プロキシサーバのホスト名(実行時オプション) ×
c4web.application.non_proxy_hosts プロキシサーバを使用しないホスト名群(実行時オプション) ×
c4web.application.proxy_port プロキシサーバのポート番号(実行時オプション) ×
c4web.application.proxy_user プロキシサーバの認証ユーザID(実行時オプション) ×
c4web.application.proxy_password プロキシサーバの認証ユーザIDに対応するパスワード(実行時オプション) ×
c4web.common.enable_soapheader_check SOAPヘッダの名前修飾チェックオプション(実行時オプション) ×
c4web.application.socket_write_timeout クライアントのソケットの書き込みタイムアウト値(実行時オプション) ×
c4web.application.socket_read_timeout クライアントのソケットの読み込みタイムアウト値(実行時オプション) ×
c4web.application.socket_connect_timeout クライアントのソケットの接続タイムアウト値(実行時オプション) ×
c4web.attachment.file_body_encoding ボディエンコーディング種別 ×
c4web.attachment.attachment_temp_directory 退避先ディレクトリ ×
c4web.attachment.attachment_file_delete_by_date 不要退避ファイルの経過日数 ×
c4web.common.prf_trace_level 性能解析トレース出力オプション

(凡例)
○:設定できます。
×:設定できません。設定した場合は無視されます。

注※
値は必ずサービスIDに変更されるため,設定する必要はありません。