[Seasar-user:18434] [S2Unit]インタフェースなしクラスへのMockInterceptor適用

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2009年 9月 3日 (木) 03:58:34 JST


小嶋と申します。お世話になっております。


以下のような呼び出しを行うクラス構造のアプリケーションにて
ActionクラスからServiceクラスのメソッドが呼ばれた際に
MockInterceptorで値を戻したいと思っています。

Action → Service → Dao


Action, Serviceクラスはインタフェースを作成していません。
(DaoはS2Daoを利用しているので、インタフェースのみです。)

また、Actionでは、Serviceを@Resourceでインジェクションしており、
Serviceでは、Daoを@Resourceでインジェクションしております。

下記のようにdiconファイルにてMockInterceptorの指定を行っているにも関わらず
、
Serviceクラス内の@Resourceが付加されているDaoコンポーネントが自動設定でき
ない
と言われてしまいます。

    <component name="mockInterceptor"
 class="org.seasar.framework.aop.interceptors.MockInterceptor">
        <initMethod name="setReturnValue">
            <arg>略</arg>
            <arg>略</arg>
        </initMethod>
    </component>
    <component class="Serviceクラス名">
        <aspect>
            mockInterceptor
        </aspect>
    </component>

Action, Service, Daoはcreator.diconで自動的にコンポーネント定義されている
ので、
そちらが優先されてしまっているのかと想像して、
DaoCreatorを解除してみたりしたのですが、状況は変わりませんでした。

原因は何が考えられるのでしょうか。

恐れ入りますが、よろしくお願いいたします。

-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20090903/e4b420ff/attachment.html>


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