| Interstage Application Server アプリケーション作成ガイド (データベース連携サービス編) |
目次
索引
![]()
|
| 第3章 クライアントアプリケーションの作成 | > 3.3 クライアントアプリケーションソースの作成(COBOL) | > 3.3.2 ソースの作成 |
グローバルトランザクション運用を行うためには、CORBAのクライアントアプリケーションの処理に加えて、COSTRANSACTIONS-CURRENT-COMMITメソッドなどのCurrentインタフェースを呼び出して、データベース連携サービスにトランザクション処理を依頼します。
これらの処理を考慮したクライアントアプリケーションの構成について以下に示します。

クライアントアプリケーションをCORBAサービスに登録、およびトランザクションサービスの初期化を行います。
アプリケーション固有の処理部。トランザクションの開始から終了までの流れを記述します。
データベース連携サービスが提供するクライアントアプリケーション用ライブラリを結合します。
以下にクライアントアプリケーションの基本形を示します。詳細は後述を参照してください。
MAIN.
*初期化処理
:
CALL "CORBA-ORB-INIT" USING
CURRENT-ARG-C
CURRENT-ARG-V
TRANSACTIONCURRENTID
ENV
ORB.
:
* サーバアプリケーションのオブジェクトリファレンス獲得
CALL "COSNAMING-NAMINGCONTEXT-RESOLVE" USING … 1
COS-NAMING
NAME
ENV
OBJ.
:
* トランザクション依頼処理
MOVE FUNCTION LENG (CORBA-ORB-OBJECTID-TRANCURRENT) TO STRING-LENGTH.
CALL "CORBA-STRING-SET" USING
TRANSACTIONCURRENTID
STRING-LENGTH
CORBA-ORB-OBJECTID-TRANCURRENT.
CALL "CORBA-ORB-RESOLVE-INITIAL-REFERENCES" USING … 2
ORB
TRANSACTIONCURRENTID
ENV
TRANCURRENTOBJ.
* トランザクション開始
CALL "COSTRANSACTIONS-CURRENT-BEGIN" USING … 3
TRANCURRENTOBJ
ENV.
* サーバアプリケーションのメソッド呼び出し
:
CALL "MOD-INTF-OPE1" USING … 4
OBJ
PARA
ENV.
:
* トランザクション完了処理
EVALUATE TRUE
WHEN CORBA-NO-EXCEPTION OF MAJOR OF ENV
CALL "COSTRANSACTION-CURRENT-COMMIT" USING … 5
TRANCURRENTOBJ
CORBA-TRUE
ENV.
WHEN CORBA-SYSTEM-EXCEPTION OF MAJOR OF ENV
CALL "COSTRANSACTION-CURRENT-ROLLBACK" USING
TRANCURRENTOBJ
ENV. |
目次
索引
![]()
|