[Seasar-user:14083] [s2pager] DefaultPagerConditionを拡張したDTOを引数にして実行するとOgnlRuntimeException

Mitsutaka Sato [E-MAIL ADDRESS DELETED]
2008年 5月 7日 (水) 16:52:50 JST


佐藤と申します。
いつもお世話になっております。

S2Pagerの DefaultPagerCondition を拡張したDTOを引数に渡してDaoのメソッドを実行すると
OgnlRuntimeExceptionが発生してしまいます。

Daoのメソッドは以下のように、外だしSQLファイルを使用しています。

    @SqlFile
    @Arguments("cond")
    public List<Map<String,Object>> searchHist(TranhistSearchCondition
cond);

TranhistSearchCondition が DefaultPagerCondition を拡張したクラスです。

Exceptionの内容は以下のとおりです。
不具合なのかこちらの設定不備等なのかわかりませんが、ご確認いただけませんでしょうか?
環境は
s2-dao-1.0.47
s2-2.4.22
です。
よろしくお願いします。


==========================================
DEBUG 2008-05-07 16:46:00,937 [http-8080-Processor25]
[ESSR0073]OGNLで例外が発生しました。理由はcount([Ljava.lang.String;)
org.seasar.framework.exception.OgnlRuntimeException:
[ESSR0073]OGNLで例外が発生しました。理由はcount([Ljava.lang.String;)
    at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:100)
    at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:62)
    at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:47)
    at org.seasar.dao.node.IfNode.accept(IfNode.java:55)
    at org.seasar.dao.node.ContainerNode.accept(ContainerNode.java:34)
    at
org.seasar.dao.impl.AbstractDynamicCommand.apply(AbstractDynamicCommand.java:66)
    at
org.seasar.dao.impl.SelectDynamicCommand.execute(SelectDynamicCommand.java:56)
    at
org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:53)
    at
org.seasar.dao.pager.PagerS2DaoInterceptorWrapper.invoke(PagerS2DaoInterceptorWrapper.java:71)
    at
com.valuecardservice.dao.PosIfTableDao$$EnhancedByS2AOP$$f8f332$$MethodInvocation$$searchHist4.proceed(MethodInvocationClassGenerator.java)
    at
org.seasar.framework.aop.interceptors.TraceInterceptor.invoke(TraceInterceptor.java:73)
    at
com.valuecardservice.dao.PosIfTableDao$$EnhancedByS2AOP$$f8f332$$MethodInvocation$$searchHist4.proceed(MethodInvocationClassGenerator.java)
    at
com.valuecardservice.dao.PosIfTableDao$$EnhancedByS2AOP$$f8f332.searchHist(PosIfTableDao$$EnhancedByS2AOP$$f8f332.java)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage.doSearch(ListAdminPage.java:169)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422.$$doSearch$$invokeSuperMethod$$(ListAdminPage$$EnhancedByS2AOP$$344422.java)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422$$MethodInvocation$$doSearch6.proceed(MethodInvocationClassGenerator.java)
    at
org.seasar.framework.aop.impl.NestedMethodInvocation.proceed(NestedMethodInvocation.java:55)
    at
com.valuecardservice.center.interceptor.AuthorizationInterceptor.invoke(AuthorizationInterceptor.java:61)
    at
org.seasar.framework.aop.impl.NestedMethodInvocation.proceed(NestedMethodInvocation.java:53)
    at
org.seasar.framework.container.customizer.AspectCustomizer$LookupAdaptorInterceptor.invoke(AspectCustomizer.java:198)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422$$MethodInvocation$$doSearch6.proceed(MethodInvocationClassGenerator.java)
    at
org.seasar.extension.tx.DefaultTransactionCallback.execute(DefaultTransactionCallback.java:58)
    at
org.seasar.extension.tx.adapter.JTATransactionManagerAdapter.required(JTATransactionManagerAdapter.java:65)
    at
org.seasar.extension.tx.RequiredInterceptor.invoke(RequiredInterceptor.java:41)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422$$MethodInvocation$$doSearch6.proceed(MethodInvocationClassGenerator.java)
    at
org.seasar.framework.aop.interceptors.ThrowsInterceptor.invoke(ThrowsInterceptor.java:77)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422$$MethodInvocation$$doSearch6.proceed(MethodInvocationClassGenerator.java)
    at
org.seasar.framework.aop.interceptors.TraceInterceptor.invoke(TraceInterceptor.java:73)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422$$MethodInvocation$$doSearch6.proceed(MethodInvocationClassGenerator.java)
    at
com.valuecardservice.center.web.tranhist.ListAdminPage$$EnhancedByS2AOP$$344422.doSearch(ListAdminPage$$EnhancedByS2AOP$$344422.java)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.seasar.framework.util.MethodUtil.invoke(MethodUtil.java:93)
    at
org.seasar.framework.beans.impl.BeanDescImpl.invoke(BeanDescImpl.java:213)
    at
org.seasar.teeda.extension.html.impl.HtmlComponentInvokerImpl.invoke(HtmlComponentInvokerImpl.java:163)
    at
org.seasar.teeda.extension.html.impl.HtmlActionListener.processAction(HtmlActionListener.java:71)
    at javax.faces.component.UICommand.broadcast(UICommand.java:149)
    at
org.seasar.teeda.extension.component.html.THtmlCommandButton.broadcast(THtmlCommandButton.java:78)
    at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:192)
    at
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:117)
    at
org.seasar.teeda.core.lifecycle.impl.InvokeApplicationPhase.executePhase(InvokeApplicationPhase.java:29)
    at
org.seasar.teeda.core.lifecycle.AbstractPhase.execute(AbstractPhase.java:57)
    at
org.seasar.teeda.core.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:97)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:100)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at
org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:63)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at
org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:77)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at
org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:69)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
    at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodException: count([Ljava.lang.String;)
    at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:888)
    at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:61)
    at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:925)
    at ognl.ASTMethod.getValueBody(ASTMethod.java:73)
    at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
    at ognl.SimpleNode.getValue(SimpleNode.java:211)
    at ognl.ASTEq.getValueBody(ASTEq.java:49)
    at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
    at ognl.SimpleNode.getValue(SimpleNode.java:211)
    at ognl.ASTAnd.getValueBody(ASTAnd.java:56)
    at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:171)
    at ognl.SimpleNode.getValue(SimpleNode.java:211)
    at ognl.Ognl.getValue(Ognl.java:333)
    at ognl.Ognl.getValue(Ognl.java:413)
    at ognl.Ognl.getValue(Ognl.java:395)
    at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:97)
    ... 68 more
==========================================
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://ml.seasar.org/archives/seasar-user/attachments/20080507/c1337ba0/attachment-0001.html 


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