While not exactly a Tapestry Beta problem I ran into this issue when upgrading to 5.4.Beta-6
Apparently the Tomcat JDBC pool and Hibernate 4.3.1.Final do not get along. I’m posting this because the error is pretty obscure. https://issues.apache.org/bugzilla/show_bug.cgi?id=56088 2014-05-28 11:48:03,087 [qtp3831981-17] PerthreadManagerImpl.java146 [WARN] TapestryIOCModule.PerthreadManager Error invoking callback org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl$2@ab6c9d: *java.lang.reflect.UndeclaredThrowableException* *java.lang.reflect.UndeclaredThrowableException* at com.sun.proxy.$Proxy82.hashCode(Unknown Source) at java.util.HashMap.hash(Unknown Source) at java.util.HashMap.getEntry(Unknown Source) at java.util.HashMap.get(Unknown Source) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.release( *JdbcCoordinatorImpl.java:399*) at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.releaseStatements( *AbstractBatchImpl.java:173*) at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.release( *AbstractBatchImpl.java:210*) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.close( *JdbcCoordinatorImpl.java:193*) at org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.close( *TransactionCoordinatorImpl.java:283*) at org.hibernate.internal.SessionImpl.close(*SessionImpl.java:365*) at org.apache.tapestry5.internal.hibernate.HibernateSessionManagerImpl.threadDidCleanup( *HibernateSessionManagerImpl.java:67*) at org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl$2.run( *PerthreadManagerImpl.java:117*) at org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl.cleanup( *PerthreadManagerImpl.java:143*) at org.apache.tapestry5.ioc.internal.RegistryImpl.cleanupThread( *RegistryImpl.java:466*) at org.apache.tapestry5.ioc.internal.RegistryWrapper.cleanupThread( *RegistryWrapper.java:38*) at org.apache.tapestry5.TapestryFilter.doFilter( *TapestryFilter.java:175*) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter( *ServletHandler.java:1331*) at org.eclipse.jetty.servlet.ServletHandler.doHandle( *ServletHandler.java:477*) at org.eclipse.jetty.server.handler.ScopedHandler.handle( *ScopedHandler.java:119*) at org.eclipse.jetty.security.SecurityHandler.handle( *SecurityHandler.java:524*) at org.eclipse.jetty.server.session.SessionHandler.doHandle( *SessionHandler.java:227*) at org.eclipse.jetty.server.handler.ContextHandler.doHandle( *ContextHandler.java:1031*) at org.eclipse.jetty.servlet.ServletHandler.doScope( *ServletHandler.java:406*) at org.eclipse.jetty.server.session.SessionHandler.doScope( *SessionHandler.java:186*) at org.eclipse.jetty.server.handler.ContextHandler.doScope( *ContextHandler.java:965*) at org.eclipse.jetty.server.handler.ScopedHandler.handle( *ScopedHandler.java:117*) at org.eclipse.jetty.server.handler.HandlerWrapper.handle( *HandlerWrapper.java:111*) at org.eclipse.jetty.server.Server.handle(*Server.java:349*) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest( *AbstractHttpConnection.java:452*) at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete( *AbstractHttpConnection.java:884*) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete( *AbstractHttpConnection.java:938*) at org.eclipse.jetty.http.HttpParser.parseNext(*HttpParser.java:634*) at org.eclipse.jetty.http.HttpParser.parseAvailable( *HttpParser.java:230*) at org.eclipse.jetty.server.AsyncHttpConnection.handle( *AsyncHttpConnection.java:77*) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle( *SelectChannelEndPoint.java:609*) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run( *SelectChannelEndPoint.java:45*) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob( *QueuedThreadPool.java:599*) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run( *QueuedThreadPool.java:534*) at java.lang.Thread.run(Unknown Source) Caused by: *java.sql.SQLException*: Statement closed. at org.apache.tomcat.jdbc.pool.interceptor.AbstractQueryReport$StatementProxy.invoke( *AbstractQueryReport.java:226*) ... 39 more