9.7.2 通信制御サーブレットの作成(OpenTP1サーバ連携の場合)
通信制御サーブレットは,TP1/COBOLアクセス用Beanを利用して,ユーザプログラムからの送受信データをそのままクライアント側に受け渡すためのJavaプログラムです。
- 〈この項の構成〉
(1) 通信制御サーブレットの作成手順
通信制御サーブレットは,XMAP3 Cosminexus連携機能のサンプルソースをカスタマイズして使用します。カスタマイズには,MyEclipseを使用します。XMAP3/Web for Cosminexusでは,次に示すフォルダに通信制御サーブレットのソース(CBLSRV.java)を提供しています。
XMAP3インストールフォルダ\Web for Cosminexus\SAMPLE\COBOL
通信制御サーブレットの例を次に示します。
(2) 通信制御サーブレットのカスタマイズ
生成した通信制御サーブレットでマップ名を判定して,業務処理に振り分けるOpenTP1用サービス名を決定してSPPを呼び出せるようにします。コーディング例を次に示します。アプリケーションサーバがUNIXの場合は,エンディアン変換が必要です。エンディアン変換部分は,図中に網掛けで示します。
(3) 通信制御サーブレットのカスタマイズ(TP1 Connector)
TP1 Connectorで通信する場合は,Beanの呼び出し前にConnectionインスタンス生成・InteractionSpecプロパティ設定処理を追加し,TP1 Connector経由でRPCを実行するようにカスタマイズしてください。このカスタマイズは,処理を一つのトランザクションとしない場合でも必要です。コーディング例を次に示します。
(4) 通信制御サーブレットのカスタマイズ(TP1 Connectorで2フェーズコミットを実行する場合)
TP1 Connectorで通信する場合に,処理を一つのトランザクションとする(2フェーズコミットを実行する)ときは,UserTransactionインスタンスを生成し,トランザクションの開始と終了を追加します。コーディング例を次に示します。