[Seasar-user:6034] Re: s2DaoでDaoのテストでエラー

加藤 潤一 [E-MAIL ADDRESS DELETED]
2007年 2月 5日 (月) 22:30:55 JST


加藤です。

はずしていたら、すみませんが、H2のサーバが起動していないとか、ポートが違うとかそのあたりはどうでしょうか?

________________________________________
差出人: [E-MAIL ADDRESS DELETED] [[E-MAIL ADDRESS DELETED]] は satoh [[E-MAIL ADDRESS DELETED]] の代理
送信日時: 2007年2月5日 20:27
宛先: [E-MAIL ADDRESS DELETED]
件名: [Seasar-user:6031]  s2DaoでDaoのテストでエラー

佐藤徹太郎です。お世話になっております。

Dolteng 0.16.1でChuraProject(Teeda+S2Dao)を作り、DaoをJUnitでテストしたところ、
エラーがでます。
障害トレースには下記のように表示されます。

org.seasar.framework.exception.SQLRuntimeException: [ESSR0071]SQLで例外(ErrorCode=90067, SQLState=90067)が発生しました。理由はorg.h2.jdbc.JdbcSQLException: Connection is broken [90067-30]
              at org.seasar.extension.jdbc.util.DataSourceUtil.getConnection(DataSourceUtil.java:38)
              at org.seasar.dao.impl.DaoMetaDataImpl.initialize(DaoMetaDataImpl.java:191)
              at org.seasar.dao.impl.DaoMetaDataFactoryImpl.createDaoMetaData(DaoMetaDataFactoryImpl.java:140)
              at org.seasar.dao.impl.DaoMetaDataFactoryImpl.getDaoMetaData(DaoMetaDataFactoryImpl.java:109)
              at org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:51)
              at book.chura.dao.BookInfoDao$$EnhancedByS2AOP$$e1dac2$$MethodInvocation$$findBookPosition0.proceed(MethodInvocationClassGenerator.java)
              at org.seasar.framework.aop.interceptors.TraceInterceptor.invoke(TraceInterceptor.java:59)
              at book.chura.dao.BookInfoDao$$EnhancedByS2AOP$$e1dac2$$MethodInvocation$$findBookPosition0.proceed(MethodInvocationClassGenerator.java)
              at book.chura.dao.BookInfoDao$$EnhancedByS2AOP$$e1dac2.findBookPosition(BookInfoDao$$EnhancedByS2AOP$$e1dac2.java)
              at book.chura.dao.ReturnBookDaoTest.testFindBookPosition(ReturnBookDaoTest.java:36)
              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:305)
              at org.seasar.extension.unit.S2TestCase.doRunTest(S2TestCase.java:92)
              at org.seasar.framework.unit.S2FrameworkTestCase.runBare(S2FrameworkTestCase.java:190)
              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)
Caused by: org.h2.jdbc.JdbcSQLException: Connection is broken [90067-30]
              at org.h2.message.Message.getSQLException(Message.java:67)
              at org.h2.message.Message.getSQLException(Message.java:49)
              at org.h2.message.Message.getSQLException(Message.java:88)
              at org.h2.engine.SessionRemote.checkClosed(SessionRemote.java:231)
              at org.h2.engine.SessionRemote.connect(SessionRemote.java:203)
              at org.h2.engine.SessionRemote.<init>(SessionRemote.java:150)
              at org.h2.engine.SessionRemote.createSession(SessionRemote.java:145)
              at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:897)
              at org.h2.Driver.connect(Driver.java:52)
              at java.sql.DriverManager.getConnection(DriverManager.java:525)
              at java.sql.DriverManager.getConnection(DriverManager.java:171)
              at org.seasar.extension.dbcp.impl.XADataSourceImpl.getXAConnection(XADataSourceImpl.java:95)
              at org.seasar.extension.dbcp.impl.XADataSourceImpl.getXAConnection(XADataSourceImpl.java:85)
              at org.seasar.extension.dbcp.impl.ConnectionPoolImpl.createConnection(ConnectionPoolImpl.java:200)
              at org.seasar.extension.dbcp.impl.ConnectionPoolImpl.checkOut(ConnectionPoolImpl.java:162)
              at org.seasar.extension.dbcp.impl.DataSourceImpl.getConnection(DataSourceImpl.java:46)
              at org.seasar.extension.jdbc.util.DataSourceUtil.getConnection(DataSourceUtil.java:36)
              ... 29 more

コンソールには下記が表示されます。

DEBUG 2007-02-05 19:46:34,656 [main] クラス(book.chura.dao.BookInfoDao[bookInfoDao])のコンポーネント定義を登録します
DEBUG 2007-02-05 19:46:34,718 [main] クラス(book.chura.dao.RentInfoDao[rentInfoDao])のコンポーネント定義を登録します
DEBUG 2007-02-05 19:46:34,750 [main] BEGIN book.chura.dao.BookInfoDao#findBookPosition(039911174)
DEBUG 2007-02-05 19:46:37,812 [main] END book.chura.dao.BookInfoDao#findBookPosition(039911174) Throwable:org.seasar.framework.exception.SQLRuntimeException: [ESSR0071]SQLで例外(ErrorCode=90067, SQLState=90067)が発生しました。理由はorg.h2.jdbc.JdbcSQLException: Connection is broken [90067-30]

どなたか、このエラーの対処方法をご存知の方おられませんでしょうか?
宜しくお願いいたします。




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