s2struts1.3.0-beta1対応のPdStruts(続々)
id:higayasuoさんありがとうございます。
教えていただいた通り、今までClass#getMethod()を使ってた部分をBeanDescFactory#getMethod()に置換してみました。
しかーし。
なんだかよくわからないことに、コンパイルエラーにはならないモノの実行時にBeanDescFactory#getMethod()自体がNoSuchMethodErrorになってしまいます。
クリーンビルドしても変わらない。
とりあえずS2.4-beta-2→S2.4-beta-3にあげてみたら、通るようになりました。
うーん。まあそんなもんか。
さて、JPetStoreのトップページが表示されました!
が、別のページに行こうとすると、
org.seasar.framework.exception.InstantiationRuntimeException: [ESSR0041]jpetstore.integration.dao.impl.CategoryDaoImplの作成に失敗しました。理由はjava.lang.InstantiationException at org.seasar.framework.util.ConstructorUtil.newInstance(ConstructorUtil.java:41) at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assembleDefault(AbstractConstructorAssembler.java:88) at org.seasar.framework.container.assembler.AutoConstructorAssembler.doAssemble(AutoConstructorAssembler.java:40) at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assemble(AbstractConstructorAssembler.java:50) at org.seasar.framework.container.deployer.RequestComponentDeployer.deploy(RequestComponentDeployer.java:60) at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98) at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:107) at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bindAuto(AbstractBindingTypeDef.java:149) at org.seasar.framework.container.assembler.BindingTypeShouldDef.doBind(BindingTypeShouldDef.java:51) at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bind(AbstractBindingTypeDef.java:67) at org.seasar.framework.container.assembler.AutoPropertyAssembler.assemble(AutoPropertyAssembler.java:63) at org.seasar.framework.container.deployer.RequestComponentDeployer.deploy(RequestComponentDeployer.java:62) at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98) at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:107) at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bindAuto(AbstractBindingTypeDef.java:163) at org.seasar.framework.container.assembler.BindingTypeShouldDef.doBind(BindingTypeShouldDef.java:51) at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bind(AbstractBindingTypeDef.java:67) at org.seasar.framework.container.assembler.AutoPropertyAssembler.assemble(AutoPropertyAssembler.java:63) at org.seasar.framework.container.deployer.RequestComponentDeployer.deploy(RequestComponentDeployer.java:62) at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98) at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:107) at pdstruts.util.DiconUtil.getComponent(DiconUtil.java:26) at pdstruts.control.impl.PageFactoryImpl.newPage(PageFactoryImpl.java:49) 〜(省略)〜 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:595) Caused by: java.lang.InstantiationException at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:30) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at org.seasar.framework.util.ConstructorUtil.newInstance(ConstructorUtil.java:39) ... 74 more
とエラー発生。
さて次はgetComponent()あたりのようです。これから調べます。