[Seasar-user:9608] [teeda] トランザクションの指定について教えてください

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2007年 8月 1日 (水) 10:45:12 JST


お世話になっております。
藤原と申します。
Teedaにて社内システムの構築をしています。
Pageクラスへのトランザクションのかけ方について御教示お願いします。
開発環境は teeda1.0.8 S2Dao1.0.43 Seasar2.4.13 です。

Pageクラスの各メソッド(do.*, initialize, prerender)にアスペクトで処理の
前後に
DBテーブルに対してログを出力するようなクラスを作成し設定しました。
また、<component name="pageCustomizer"〜内に以下の様な設定をし、トランザク
ション
の設定をしました。
    <initMethod name="addCustomizer">
      <arg>requiredTxCustomizer</arg>
    </initMethod>

この時Pageクラスで例外が発生しRollbackされると、ログ出力までRollbackされて
しま
いました。
ログ出力のアスペクト処理内でコミットし、Pageクラスの各メソッドで例外が発生
しても
ログ出力までRollbackされないようにするには、どの様なトランザクションの指定
を
diconファイルに書けばよいのでしょうか?

以下の様なログ出力と、do*のメソッドへのトランザクションを独立して処理させ
られれば
良いのかと思うのですが。。
                <−−−−トランザクションA開始
        <−−−−ログ出力A
                <−−−−トランザクションA終了(コミット)

                <−−−−トランザクションB開始
Pageクラスのdo*メソッド
                <−−−−トランザクションB終了(コミット)

                <−−−−トランザクションC開始
        <−−−−ログ出力C
                <−−−−トランザクションC終了(コミット)

よろしく御教示お願いいたします





Seasar-user メーリングリストの案内