-
FEATURED COMPONENTS
First time here? Check out the FAQ!
严重: Failed to invoke class org.zkoss.zkplus.hibernate.OpenSessionInViewListener
org.hibernate.TransactionException: Transaction not successfully started
我开发的专案是使用ZK+Hibernate+Spring
但每次进行数据库的操作之后都会出现该Exception,但是又对数据的处理没有任何不良影响。也就是说,虽然一直出现这个Exception,但是系统仍然可以正常运行。
据我跟踪观察代码,该Exception并非在数据库操作时抛出,而是在每次数据库操作之后的一个ZK事件调用时出现(例如:alert等)。
请问这属不属于一个bug,或者有没有相关文章讨论过此问题,谢谢各位了。
以下是该Exception的全部信息:
严重: Failed to invoke class org.zkoss.zkplus.hibernate.OpenSessionInViewListener org.hibernate.TransactionException: Transaction not successfully started at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:100) at org.zkoss.zkplus.hibernate.OpenSessionInViewListener.cleanup(OpenSessionInViewListener.java:65) at org.zkoss.zk.ui.util.Configuration.invokeExecutionCleanups(Configuration.java:842) at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1077) at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:500) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:385) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:394) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667) 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)
<?xml version="1.0" encoding="UTF-8"?> <!-- Created by ZK Studio --> <zk> <device-config> <device-type>ajax</device-type> <timeout-uri>index.html</timeout-uri> <!-- An empty URL can cause the browser to reload the same URL --> </device-config> <!-- Hibernate SessionFactory lifecycle start--> <listener> <description>Hibernate SessionFactory lifecycle</description> <listener-class>org.zkoss.zkplus.hibernate.HibernateSessionFactoryListener</listener-class> </listener> <!-- Hibernate OpenSessionInView Pattern --> <listener> <description>Hibernate Open Session In View life-cycle</description> <listener-class>org.zkoss.zkplus.hibernate.OpenSessionInViewListener</listener-class> </listener> <!-- Hibernate thread session context handler --> <listener> <description>Hibernate thread session context handler</description> <listener-class>org.zkoss.zkplus.hibernate.HibernateSessionContextListener</listener-class> </listener> <!-- Hibernate SessionFactory lifecycle end--> <session-config> <session-timeout>-1</session-timeout> </session-config> </zk>
<bean id="MyComps" class="com.test.MyComps" scope="prototype"></bean>
仍然有那个Exception出现,貌似是在每次触发event之后出现的。
我的Session获取方式
Session session = HibernateUtil.currentSession();
Asked: 2009-12-24 02:37:30 +0800
Seen: 1,168 times
Last updated: Dec 30 '09