5.3.5 DBアダプタを定義する

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

<この項の構成>
(1) サービス部品の電文フォーマット
(2) データ変換
(3) 独自定義ファイルの作成と設定
(4) サービスアダプタ定義画面での操作
(5) データ変換
(6) EARファイルの入れ替え

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

DBアダプタの場合,WSDLが生成されないため,サービス部品の電文フォーマットも自動生成されません。そのため,サービス部品の電文フォーマット(DBアダプタ用のXMLフォーマット定義ファイル)を作成して,設定する必要があります。

DBアダプタ用のXMLフォーマット定義ファイルは,「5.3.5(3)(a) SQLオペレーション定義ファイルの作成」で示すSQLオペレーション定義ファイルを基にして,csamkxmlsコマンドを使用して作成します。

DBアダプタ用のXMLフォーマット定義ファイルの作成方法については,「4.3.5 サービス部品電文を作成する(DBアダプタ電文の場合)」を参照してください。

(2) データ変換

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

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

データ変換の詳細については,「7. データ変換の定義」を参照してください。

(3) 独自定義ファイルの作成と設定

サービス部品の利用者は,次のファイルを作成し,サービスアダプタ定義画面で設定する必要があります。

(a) SQLオペレーション定義ファイルの作成

SQLオペレーション定義ファイルは,テキストエディタなどを使用してXML文書形式で作成します。

ファイル名を[csa_sql_<任意の名称>.xml]で作成して編集します。

SQLオペレーション定義ファイルの作成については,「4.3.5(1) SQLオペレーション定義ファイルの作成」を参照してください。

(b) アプリケーション統合属性ファイルの作成

アプリケーション統合属性ファイルは,サンプルファイルをテキストエディタなどで編集して作成します。アプリケーション統合属性ファイルは「cscadapter_property.xml」という名称で,次の場所に格納されています。

<Cosminexusのインストールディレクトリ>¥CSC¥config¥dba¥templates

なお,アプリケーション統合属性ファイルによるプロパティ設定については,マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「9.2 アプリケーション統合属性ファイルによるプロパティ設定」を参照してください。アプリケーション統合属性ファイルの詳細については,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(アプリケーション/リソース定義)」の「3.1 アプリケーション統合属性ファイル」を参照してください。

アプリケーション統合属性ファイルに設定する項目について,次の表に示します。

表5-3 アプリケーション統合属性ファイルの設定項目

タグ説明設定内容変更
可否
設定例
<hitachi-application-all-property>ルートタグ
 <ejb-jar>EJBに関する情報の定義の開始タグ
  <hitachi-session-bean-property>SessionBeanの属性の定義の開始タグ
   <resource-ref>リソース参照についての定義の開始タグ
    <res-ref-name>リソース参照名SQLオペレーション定義ファイルの<DB_NAME>タグに指定したデータベース参照名DB_SERVER1
    <res-sharing-scope>参照したリソースを共有するかどうかの指定DBアダプタが参照するDB Connectorを共有するかどうかの指定Shareable
    <linked-to>データソース表示名DB Connectorのプロパティ定義(display-name)に指定したリソースアダプタの名称DB_Connector_for_HiRDB_Type4_XAやDB_Connector_for_Oracle_XAなど※1
display-nameを変更した場合は変更後の名称。
   </resource-ref>リソース参照についての定義の終了タグ
   <container-transaction>コンテナのトランザクションについての定義の開始タグ
    <trans-attribute>メソッドに割り当てるトランザクション属性トランザクションを引き継ぐRequiredRequired※2
   </container-transaction>コンテナのトランザクションについての定義の終了タグ
   <session-runtime>runtimeの定義の開始タグ
    <stateless>statelessの定義の開始タグ
     <pooled-instance>プール内のインスタンスについての定義の開始タグ
      <minimum>プール内のインスタンスの最小数DBアダプタのインスタンスの最小数0または1≦minimum≦maximum
      <maximum>プール内のインスタンスの最大数DBアダプタのインスタンスの最大数0(無制限)または1≦maximum≦maximum-sessions
     </pooled-instance>プール内のインスタンスについての定義の終了タグ
    </stateless>statelessの定義の終了タグ
   </session-runtime>runtimeの定義の終了タグ
  </hitachi-session-bean-property>SessionBeanの属性の定義の終了タグ
 </ejb-jar>EJBに関する情報の定義の終了タグ
</hitachi-application-all-property>ルートタグ
(凡例)
-:変更できません。
注※1
display-nameを変更した場合は,変更後の名称を指定してください。
注※2
デフォルトのままで変更できません。必ずRequiredを指定してください。

注意
表5-3で示した設定・変更できる項目以外は,サンプルファイルとして提供したアプリケーション統合属性ファイルを設定・変更しないでください。

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

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

  1. サービスアダプタ定義画面を表示します。
    サービスアダプタ定義画面の表示方法については,「5.3.1(5) サービスアダプタ定義画面の表示」を参照してください。
  2. サービス部品制御情報の[サービス名]および[サービスID]を必要に応じて編集します。
    サービス名は,サービスアダプタを追加したときに入力した名称から異なる名称に変更したい場合に入力してください。
    サービスIDは,運用管理者がHCSCサーバの操作(オペレーション)を行うときに必要になる識別情報です。サービス名との関連がわかるような形で命名することを推奨します。
  3. サービス部品制御情報の[追加]ボタンをクリックして,オペレーションを追加します。
    オペレーション名は,サービスリクエスタからHCSCサーバを呼ぶときに必要になる識別情報です。
  4. サービス部品制御情報の[システム例外をフォルトに変換する]チェックボックスを必要に応じてチェックします。
  5. オペレーション情報の[通信モデル]のドロップダウンリストから,「同期」または「非同期」を選択します。
    応答が必要な場合は「同期」を選択してください。
  6. 要求電文について,手順7.から手順18.までを実施します。
  7. 次に示す操作をします。
    標準電文のフォーマットを指定する場合
    手順8.~11.を実施して,手順12.に進みます。
    標準電文のフォーマットを指定しない場合
    手順12.に進みます。
  8. 標準電文の[使う]チェックボックスをチェックします。
  9. 標準電文の[フォーマットID]を指定します。
    [フォーマットID]に任意の値を指定します。
  10. 標準電文の[参照]ボタンをクリックして,[電文フォーマット]に標準電文のフォーマットを指定します。
    指定できる電文フォーマットの形式については,「2.6.5 XMLスキーマの適用範囲」を参照してください。なお,外部のXMLスキーマを参照している電文フォーマットは指定できません。
  11. 標準電文の[表示]ボタンをクリックします。
    標準電文のフォーマットが表示されます。必要に応じて指定した標準電文のフォーマットを確認してください。
  12. サービス部品電文の[フォーマットID]を指定します。
    [フォーマットID]に任意の値を指定します。
  13. サービス部品電文の[参照]ボタンをクリックして,[電文フォーマット]にサービス部品電文のフォーマットを指定します。
    ここには,作成したDBアダプタ用のXMLフォーマット定義ファイルを指定します。
    [電文フォーマット]に指定できる電文種別は,XML電文だけです。
  14. サービス部品電文の[表示]ボタンをクリックします。
    サービス部品電文のフォーマットが表示されます。必要に応じて指定したサービス部品電文のフォーマットを確認してください。
  15. 必要に応じて,データ変換定義を行います。
    次に示す操作をします。
    標準電文の[使う]チェックボックスをチェックした場合
    手順16.~18.を実施して,手順19.に進みます。
    標準電文の[使う]チェックボックスをチェックしない場合
    手順19.に進みます。
  16. データ変換定義のファイル名を入力します。
  17. [編集]ボタンをクリックします。
    データ変換定義画面が表示されます。
    なお,初めて定義する場合は,[ルート要素選択]ダイアログが表示されます。
    また,電文フォーマットを変更した場合は,電文フォーマットの変更を反映するかを確認するダイアログが表示されます。電文フォーマットを変更した場合の手順は,「7.3.2 電文フォーマットを変更した場合の定義手順」を参照してください。
  18. 標準電文とサービス部品電文の内容をマッピングします。
  19. 手順5.の[通信モデル]で「同期」を選択した場合,応答電文についても同様に,手順7.から手順18.までを実施します。
  20. サービスアダプタ定義(詳細)タブをクリックします。
  21. カスタムアダプタ(EJB-JARファイル)の名称を確認します。
    カスタムアダプタ(EJB-JARファイル)の名称が,「cscdba_ejb.jar」であることを確認してください。
    ユーティリティクラス(JARファイル)の設定は不要です。
  22. 独自定義ファイルの[追加]ボタンをクリックして,次のファイルを追加します。
    • SQLオペレーション定義ファイル
      [csa_sql_<任意の名称>.xml]
    • アプリケーション統合属性ファイル
      [cscadapter_property.xml]
  23. 定義内容を確認して,Eclipseのメニューから[ファイル]-[保管]を選択し,定義内容を保存します。

(5) データ変換

(a) データ変換が必要なケース

次のような場合は,標準電文のフォーマットを指定してデータ変換が必要です。

(b) データ変換の定義

データ変換の詳細については,「7. データ変換の定義」を参照してください。

(6) EARファイルの入れ替え

DBアダプタの追加時にEARファイルを設定します。DBアダプタを追加したあとにEARファイルを修正する必要がある場合,DBアダプタのサービスアダプタ定義画面で,EARファイルを入れ替えます。

DBアダプタのサービスアダプタ定義画面で,EARファイルを入れ替える手順を次に示します。

  1. ツリービューのサービス定義一覧で,EARファイルを入れ替えるDBアダプタをダブルクリックします。
    サービスアダプタ定義画面が表示されます。
  2. 画面下部の[サービスアダプタ定義(詳細)]タブをクリックします。
    サービスアダプタ定義(詳細)画面が表示されます。
  3. サービスアダプタ定義(詳細)画面で,[参照]ボタンをクリックします。
  4. 入れ替えるEARファイルを指定します。