[Seasar-user:11891] Re: [Seasar]Seasar2.4系でトランザクションを扱うための設定
    Koichi Kobayashi
    [E-MAIL ADDRESS DELETED]
       
    2007年 12月  3日 (月) 20:00:25 JST
    
    
  
小林 (koichik) です.
Date:    Mon, 3 Dec 2007 17:31:44 +0900
From:    "Mitsutaka Sato" <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:11884] Re: [Seasar]Seasar2.4系でトランザクションを扱うための設定
> <component class="...Dao">
>  <aspect>dao.interceptor</aspect>
>  <aspect>j2ee.requiredTx</aspect>
> </component>
> 
> ここはやはり、Txから先に書かないと行けない仕様となっているのでしょうか?
はい.
S2Dao のインターセプタは後続のインターセプタを
呼び出さないため,上記のように記述すると
トランザクションのインターセプタは適用されません.
もし S2Dao のインターセプタが後続のインターセプタを
呼び出すとしても,上記の順番だと
DB アクセス
  トランザクション開始
  トランザクション終了
という流れになってしまいます.
トランザクション開始
  DB アクセス
トランザクション終了
という流れにするには
> <component class="...Dao">
>  <aspect>j2ee.requiredTx</aspect>
>  <aspect>dao.interceptor</aspect>
> </component>
の順で記述しなくてはなりません.
-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
    
    
Seasar-user メーリングリストの案内