付録L.8 TP1インバウンド連携機能のサンプルプログラム
TP1インバウンド連携機能を使用するサンプルプログラムは,次のディレクトリに格納されます。
<Application Serverのインストールディレクトリ>\CC\examples\tp1inbound
サンプルプログラムの概要と実行手順を説明します。
(1) TP1インバウンド連携機能のサンプルプログラムの概要
TP1インバウンド連携機能のサンプルプログラムの構成を次に示します。
このサンプルプログラムは,TP1/Server Baseが提供するBaseサンプルのC言語のSUPからRPC要求電文を受け付け,BaseサンプルのC言語のSPPと同等の処理を実行するMessage-driven Beanのプログラムです。BaseサンプルのC言語のSPPと同等の処理とは,RPC要求電文の受け付け時にMessage-driven Beanが実行され,実行結果がRPC応答電文としてC言語のSUPに返される処理を指します。Message-driven Beanの処理は,BaseサンプルのC言語のSPPと同様に顧客情報の取得や更新を実施します。
サンプルプログラムでは,メモリ上のテーブルに顧客情報を格納します。サンプルプログラムで使用するテーブル構成を表L-4に,およびテーブルの内容を表L-5に示します。
カラム |
説明 |
---|---|
name |
名前 |
sex |
性別 |
age |
年齢 |
sale |
販売額 |
name |
sex |
age |
sale |
---|---|---|---|
Suzuki |
M |
30 |
1000000 |
Okada |
F |
23 |
1500000 |
Yoshida |
F |
26 |
800000 |
Saitoh |
M |
24 |
1000000 |
Itoh |
M |
35 |
1800000 |
Nishikawa |
M |
20 |
300000 |
Katoh |
F |
28 |
1000000 |
Satoh |
F |
27 |
2100000 |
Hasegawa |
M |
25 |
600000 |
Watanabe |
M |
31 |
1600000 |
(2) TP1インバウンド連携機能のサンプルプログラムの実行手順
サンプルプログラムの実行手順を示します。
(a) TP1/Server BaseのBaseサンプルの設定
TP1/Server BaseのBaseサンプルに対して,次の設定を実施してください。
-
ユーザサービスネットワーク定義によるスケジューラダイレクトの設定
TP1インバウンドアダプタをユーザサービスネットワーク定義によるスケジューラダイレクト機能を使って呼び出すために,OpenTP1のユーザサービス定義,ユーザサービスネットワーク定義の定義を設定します。設定する内容について次に示します。
-
ユーザサービスネットワーク定義に,TP1インバウンドアダプタのサービスグループ名,ホスト名,およびポート番号を指定します。設定項目について次の表に示します。
表L‒6 ユーザサービスネットワーク定義の設定項目 設定項目
設定する内容
サービスグループ名
Baseサンプルで指定しているサービスグループ名「base_svg」を指定します。
ホスト名
アプリケーションサーバのホスト名を指定します。※
ポート番号
TP1インバウンドアダプタのConnector属性ファイルのscd_portプロパティで定義したポート番号を指定します。
- ユーザサービスネットワーク定義の例
-
dcsvgdef -g base_svg -h ホスト名[:ポート番号]
-
ユーザサービス定義のrpc_destination_modeにdefinitionを設定します。これによって,dc_rpc_call関数を呼び出す際に,ユーザサービスネットワーク定義の指定値から宛先を検索するようになります。
ユーザサービス定義の例
set rpc_destination_mode = definition
なお,詳細については,マニュアル「OpenTP1 プログラム作成の手引」を参照してください。
-
-
性能解析トレースの設定
TP1インバウンドアダプタでOpenTP1の性能解析トレースの情報を引き継ぐためには,システム共通定義に性能解析トレースの設定を実施する必要があります。設定内容について次の表に示します。
表L‒7 性能解析トレースの設定内容 設定内容
設定の目的
set prf_trace=Y
性能検証用トレース情報を取得するために設定します。
set rpc_prf_trace_level=00010001
OpenTP1のPRF情報をApplication Serverに伝播するために設定します。
システム共通定義については,マニュアル「OpenTP1 システム定義」を参照してください。
(b) サンプルプログラムのコンパイル
サンプルで提供するバッチファイル(compile.bat)を使用して,サンプルプログラムをコンパイルします。このバッチファイルで,EARファイルが作成されます。
(c) J2EEサーバのセットアップ
「付録L.1(1) J2EEサーバのセットアップ」を参照してください。
(d) J2EEサーバのカスタマイズ
「付録L.1(2) J2EEサーバのカスタマイズ」を参照してください。
(e) J2EEサーバの起動
「付録L.1(3) J2EEサーバの起動」を参照してください。
(f) TP1インバウンドアダプタのインポート,設定,および開始
TP1インバウンドアダプタのインポートおよび設定方法については,「付録L.1(4) リソースアダプタの設定」を参照してください。ただし,参照先の記述のうち,cjtestresコマンドを使用したリソースアダプタの接続テストは不要です。接続テストを実施するとメッセージKDJE48606-Eが発生します。TP1インバウンドアダプタの設定では,Connector属性ファイルのservice_groupプロパティにはのBaseサンプルで指定しているサービスグループ名「base_svg」を指定します。
(g) アプリケーションのデプロイ
「付録L.1(5) アプリケーションのインポート,設定,および開始」を参照してください。
(h) SUPの実行
TP1/Server Baseで提供しているBaseサンプルを参照してください。
(i) アプリケーションのアンデプロイ
「付録L.1(6) アプリケーションの停止,削除」を参照してください。
(j) J2EEサーバの終了
「付録L.1(7) J2EEサーバの終了」を参照してください。
(3) サンプルプログラムの注意事項
ここでは,サンプルプログラムを使用するときの注意事項について説明します。
-
TP1インバウンドアダプタ接続関連の設定について
このサンプルプログラムは,リソースとしてTP1インバウンドアダプタを使用するため,TP1インバウンドアダプタ接続に関する設定を適切に実施してください。
-
リソースのリンク解決について
TP1インバウンドアダプタのデフォルトの表示名を変更しなければ,リンク解決は不要です。TP1インバウンドアダプタのデフォルトの表示名を変更した場合は,リンク解決が必要になります。リンク解決の方法を次に示します。
1. サンプルで提供するcosminexus.xmlの<message-ref>にリソースの表示名を設定します。
設定方法については,マニュアル「アプリケーションサーバ リファレンス 定義編(アプリケーション/リソース定義)」の「2. アプリケーション属性ファイル(cosminexus.xml)」を参照してください。
2. アプリケーションをデプロイします。
-
-
サンプルプログラムを実行するプラットフォームについて
このサンプルプログラムは,エンディアンを意識したユーザデータの作成,取得は実施しません。このため,エンディアンが同一のプラットフォームでSUPを実行してください。エンディアンが異なるプラットフォームでSUPを実行すると,サンプルプログラムの「販売額」が不正な値となります。