[Seasar-user:9652] Re: DaoへのAOP適用

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 8月 2日 (木) 22:00:12 JST


小林 (koichik) です.

Date:    Thu, 02 Aug 2007 21:18:16 +0900
From:    島村竜一 <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:9651] Re: DaoへのAOP適用

> 使用している
> test2.dicon
> daoソース
> インターセプターのソースを
> 添付します。

添付していただいたソースをこちらで動かしたところ,

AOPが実行されました
AOPが実行されました
AOPが実行されました

というメッセージがちゃんと表示されました.
S2Dao のインターセプタがコメントアウトされているので
DaoAdvice が invocation.proceed() を呼び出したところで
NoSuchMethodError となりますが.

テストケースは以下の通り.

public class DaoTest extends S2TestCase {

    private AcceptGoodsDao dao;

    @Override
    protected void setUp() throws Exception {
        super.setUp();
        include("test2.dicon");
    }

    public void test() throws Exception {
        dao.updateLogicDeleteModifiedOnly(null);
    }
}

添付の dicon では pointcut に updateLogicDeleteModifiedOnly
だけが指定されているので,他のメソッドにはインターセプタが
適用されませんが,それは確認のために意図的にやってますよね?

とりあえず,上記のテストコードを実行してコンソールを
確認してください.


-- 
<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 メーリングリストの案内