[Seasar-user:7944] [S2Dao] メソッドでList<Map<String, String>>をreturnすると例外発生
松崎 学
[E-MAIL ADDRESS DELETED]
2007年 5月 30日 (水) 22:58:23 JST
松崎です。
S2Dao1.0.43を使用して、メソッドの戻り値を
List<Map<String, String>>とすると以下の例外が発生してしまいます。
(JUnitで実行しました。)
そういうメソッドがひとつでもあると、正常に動いていた他のメソッドでも
例外が発生するようになります。
戻り値がList<Map>ならOKでした。
できればコレクションクラスは全てジェネリクスにしたいのです。
対応をご検討いただけないでしょうか?
java.lang.ClassCastException
at java.lang.Class.cast(Class.java:2951)
at org.seasar.dao.annotation.tiger.impl.DaoAnnotationReaderImpl.getBeanClass(DaoAnnotationReaderImpl.java:83)
at org.seasar.dao.impl.DaoMetaDataImpl$ResultSetHandlerFactoryImpl.createResultSetHandler(DaoMetaDataImpl.java:1022)
at org.seasar.dao.impl.DaoMetaDataImpl.createResultSetHandler(DaoMetaDataImpl.java:411)
at org.seasar.dao.impl.DaoMetaDataImpl.setupSelectMethodByManual(DaoMetaDataImpl.java:322)
at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodByManual(DaoMetaDataImpl.java:303)
at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodBySqlFile(DaoMetaDataImpl.java:258)
at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:189)
at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:181)
at org.seasar.dao.impl.DaoMetaDataImpl.setupSqlCommand(DaoMetaDataImpl.java:175)
at org.seasar.dao.impl.DaoMetaDataImpl.initialize(DaoMetaDataImpl.java:153)
at org.seasar.dao.impl.DaoMetaDataFactoryImpl.createDaoMetaData(DaoMetaDataFactoryImpl.java:123)
at org.seasar.dao.impl.DaoMetaDataFactoryImpl.getDaoMetaData(DaoMetaDataFactoryImpl.java:105)
at org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:51)
at org.seasar.dao.pager.PagerS2DaoInterceptorWrapper.invoke(PagerS2DaoInterceptorWrapper.java:71)
at jp.co.camnet.macs.dao.master.McDivNameDao$$EnhancedByS2AOP$$15d4de6$$MethodInvocation$$getByPk0.proceed(MethodInvocationClassGenerator.java)
at org.seasar.javelin.JavelinTraceInterceptor.invoke(Unknown Source)
at jp.co.camnet.macs.dao.master.McDivNameDao$$EnhancedByS2AOP$$15d4de6$$MethodInvocation$$getByPk0.proceed(MethodInvocationClassGenerator.java)
at org.seasar.framework.aop.interceptors.TraceInterceptor.invoke(TraceInterceptor.java:70)
at jp.co.camnet.macs.dao.master.McDivNameDao$$EnhancedByS2AOP$$15d4de6$$MethodInvocation$$getByPk0.proceed(MethodInvocationClassGenerator.java)
at jp.co.camnet.macs.dao.master.McDivNameDao$$EnhancedByS2AOP$$15d4de6.getByPk(McDivNameDao$$EnhancedByS2AOP$$15d4de6.java)
at jp.co.camnet.macs.dao.master.McDivNameDaoTest.test001Tx(McDivNameDaoTest.java:46)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at junit.framework.TestCase.runTest(TestCase.java:164)
at org.seasar.framework.unit.S2FrameworkTestCase.doRunTest(S2FrameworkTestCase.java:324)
at org.seasar.extension.unit.S2TestCase.doRunTest(S2TestCase.java:92)
at org.seasar.framework.unit.S2FrameworkTestCase.runBare(S2FrameworkTestCase.java:188)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
以上、よろしくお願い致します。
Seasar-user メーリングリストの案内