Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]() ![]() |
第2章 C++言語インタフェース | > 2.17 Currentクラス |
CosTransactions::Current::commit
#include "orb_cplus.h" #include "CosTransactions_cplus.h" void CosTransactions::Current::commit( CORBA::Boolean report_heuristics, CORBA::Environment& env);
トランザクションをcommitします。CurrentインタフェースのオブジェクトリファレンスはCORBA::ORB::resolve_initial_referencesメソッド (CORBA::ORB::ObjectId_TransactionCurrent)で取得します。
正常終了した場合は、envのexceptionメンバにNULLオブジェクトリファレンスが設定されます。
異常終了した場合は、envのexceptionメンバにSystemExceptionまたはUserExceptionオブジェクトのオブジェクトリファレンスが設定されます。UserExceptionの場合は以下の例外クラスが通知されます。
CosTransactions::NoTransaction:
トランザクションが作成されていません。
CosTransactions::HeuristicMixed:
トランザクションの完了状態は、いくつかがcommitされ、いくつかがrollbackされた状態です。
CosTransactions::HeuristicHazard:
トランザクションの完了状態不明です。
SystemExceptionの場合は以下の例外クラスが通知されます。
CORBA::StExcep::NO_PERMISSION: トランザクションをcommitする権利がありません。 CORBA::StExcep::TRANSACTION_ROLLEDBACK: トランザクションがロールバックされています。 CORBA::StExcep::NO_IMPLEMENT: OTSシステム、またはリソース管理プログラムが起動されていません。 CORBA::StExcep::COMM_FAILURE: 通信異常が発生しました。 CORBA::StExcep::NO_RESOURCES: 資源不足が発生しました。 CORBA::StExcep::NO_MEMORY: 動的メモリの獲得に失敗しました。
目次
索引
![]() ![]() |