[Seasar-user:802] S2Strutsで継承したActionクラスをcomponentに追加するとInstantiationRuntimeException

B rc5.so-net.ne.jp Yoshihisa Tane prodrive
2004年 6月 10日 (木) 13:06:20 JST


初めまして、taneと申します。

仕事でS2Strutsを導入しようとしています。
継承したActionクラスをコンポーネント定義に登録し、継承元のActionクラスの
インスタンスを生成しようとするとInstantiationRuntimeExceptionが発生します。

S2Strutsのexampleで試すとこのような感じです。
----------------------------------------------------

AddActionをextendsし、ExtendAddActionを作成します。
public class ExtendAddAction extends AddAction {
    public ExtendAddAction(AddService addService) {
        super(addService);
    }
}

これをAdd.diconに登録します。
<components>
    <component class="examples.struts.AddAction"/>
    <component class="examples.struts.ExtendAddAction"/>
    <component class="examples.struts.AddServiceImpl"/>
</components>

Tomcatを起動し、1+1 calculate とするとInstantiationRuntimeExceptionが発生します。

struts-config.xmlを継承したExtendAddActionクラスに変更すると動作するようです。
<action
    path="/add"
    type="examples.struts.ExtendAddAction"
    name="addForm"
    scope="request"
    validate="false"
    input="/pages/addInput.jsp">
    <forward name="success" path="/pages/addResult.jsp" />
</action>

----------------------------------------------------

環境は、Eclipse 2.1.3、J2SDK 1.4.2_04、Tomcat5.0.25、Struts1.1
        SeasarV2 2.0.9、S2StrutsV1.0.3です。
よろしくお願いします。

-- 
Yoshihisa Tane <[E-MAIL ADDRESS DELETED]>




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