Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第2章 C++言語インタフェース> 2.17 Currentクラス

2.17.1 CosTransactions::Current::begin

名前

 CosTransactions::Current::begin

形式

 #include  "orb_cplus.h"
 #include  "CosTransactions_cplus.h"
 void  CosTransactions::Current::begin(
                        CORBA::Environment&        env);

機能説明

 新しいトランザクションを作成します。Currentインタフェースのオブジェクトリファレンスは
CORBA::ORB::resolve_initial_referencesメソッド(CORBA::ORB::ObjectId_TransactionCurrent)で取得します。

 CosTransactions::Current::set_timeoutメソッドでタイムアウトを設定していない場合、運用環境ファイルのTRAN_TIME_OUTに指定されたタイムアウト時間が有効となります。

パラメタ

 env
 例外情報を獲得するためにCORBA::Environmentオブジェクトを指定します。

復帰値

 正常終了した場合は、envのexceptionメンバにNULLオブジェクトリファレンスが設定されます。
 異常終了した場合は、envのexceptionメンバにSystemExceptionまたはUserExceptionオブジェクトのオブジェクトリファレンスが設定されます。

 UserExceptionの場合は以下の例外クラスが通知されます。

CosTransactions::SubtransactionsUnavailable:
 ネストトランザクションを作成しようとしました。

 SystemExceptionの場合は以下の例外クラスが通知されます。

CORBA::StExcep::NO_IMPLEMENT:
 OTSシステムが起動されていません。
CORBA::StExcep::COMM_FAILURE:
 以下の原因が考えられます。
・通信異常が発生しました。
・CORBAサービスの環境ファイルのinitial_hosts(PCの場合はinithost)のOTSシステムが存在するホストの情報が設定されていません。
CORBA::StExcep::NO_RESOURCES:
 資源不足が発生しました。トランザクション最大数を超えた可能性があります。
CORBA::StExcep::NO_MEMORY:
 動的メモリの獲得に失敗しました。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005