bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo CORBA プログラミング・リファレンス > TP フレームワーク |
Tuxedo CORBA プログラミング・リファレンス
|
概要
アプリケーションが、データベースへのログイン、既知のオブジェクト・ファクトリの作成および登録、グローバル変数の初期化などのアプリケーション固有の初期化手続きを実行できるようにします。
C++ バインディング
class Server {
public:
CORBA::Boolean initialize(int argc, char** argv);
};
引数
argc および argv 引数がコマンド行から渡されます。argc 引数には、サーバ名が格納されます。argv 引数には、アプリケーション固有の最初のコマンド行オプションが格納されます (存在する場合)。
コマンド行オプションは、SERVERS セクションにあるサーバのエントリの CLOPT パラメータを使用して、UBBCONFIG ファイルで指定します。CLOPT パラメータには、システムで認識されるオプション、ダブル・ハイフン (--)、アプリケーション固有のオプションの順に指定します。argc の値は、アプリケーション固有のオプションの数よりも 1 大きい値です。詳細については、『BEA Tuxedo のファイル形式とデータ記述方法』の「ubbconfig(5)」を参照してください。
例外
Server::initialize() で例外が発生すると、TP フレームワークがその例外をキャッチします。TP フレームワークは、initialize() が FALSE を返した場合と同じように動作します。つまり、例外は失敗と見なされます。また、エラー・メッセージが、次のように例外型ごとにユーザ・ログ (ULOG) ファイルに書き込まれます。
"Couldn't register factory");
説明
サーバ初期化の最後のステップとして呼び出される initialize コールバック・メソッドを使用すると、アプリケーションがアプリケーション固有の初期化を実行できます。
通常、サーバ・アプリケーションは、Server::initialize で以下のタスクを実行します。
サーバ・アプリケーションでは、必要な XA リソース・マネージャをオープンする必要があります。この処理には、以下のいずれかのメソッドを呼び出します。
注記 INS ブートストラップ処理メカニズムを使用して初期オブジェクト・リファレンスを取得する場合は、TP::open_xa_rm() メソッドを使用する必要があります。
戻り値
Boolean の TRUE または FALSE。TRUE は成功を示します。FALSE は失敗を示します。initialize() でエラーが発生した場合、アプリケーション・コードは FALSE を返します。アプリケーション・コードでは、システム・コールの exit() を呼び出してはなりません。exit() を呼び出すと、TP フレームワークが起動時に割り当てられたリソースを解放できないので、予期できない結果が発生する可能性があります。
戻り値が FALSE の場合は、次のように処理されます。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |