5.4.2 ステップ2 :インタフェースのトランザクション・ポリシーの定義

トランザクション・ポリシーは、インタフェースごとに使用されます。設計時に、Oracle Tuxedo CORBAアプリケーション内のどのインタフェースでトランザクションを処理するかを決定します。次の表に、トランザクション・ポリシーを示します。

表5-2 トランザクション・ポリシー

トランザクション・ポリシー 説明
always インタフェースは常にトランザクションの一部である必要があります。インタフェースがトランザクションの一部ではない場合、トランザクションはTPフレームワークによって自動的に開始されます。
ignore インタフェースはトランザクション非対応です。ただし、トランザクションのスコープ内でこのインタフェースにリクエストを行うことはできます。このインタフェースのUBBCONFIGファイルで指定されるAUTOTRANパラメータは無視されます。
never インタフェースはトランザクション非対応です。このインタフェース用に作成されるオブジェクトは、トランザクションに関与できません。Oracle Tuxedoシステムは、このポリシーが設定されているインタフェースがトランザクションに関与した場合にINVALID_TRANSACTION例外を生成します。
optional インタフェースはトランザクション対応可能です。リクエストがトランザクションに関係する場合、オブジェクトはトランザクションに関与できます。このトランザクション・ポリシーはデフォルトです。ノート: リクエストのトランザクション・プロパティは、autotranパラメータを使用しても定義できます。

開発中に、トランザクション・ポリシーを割り当てることで、トランザクション内で実行するインタフェースを決定します。

CORBAサーバー・アプリケーションでは、実装構成ファイル(ICF)でトランザクション・ポリシーを指定します。genicfコマンドを実行すると、テンプレートのICFファイルが作成されます。

Transactionsサンプル・アプリケーションでは、Registrarインタフェースのトランザクション・ポリシーがalwaysに設定されます。