[jboss-user] [JBoss jBPM] - Exception on scheduler launch
Vlad Tepesch
do-not-reply at jboss.com
Thu Dec 28 05:04:34 EST 2006
Hello
First of all, sorry for my English, it's not my native language.
Now, the problem :
I'm using JBPM 3.1.2 with a JBoss 4.0 and I try to make a project on an Eclispe I haven't setup myself (so I don't really know wich plug in is installed).
When I try to laucnch the JBPM's Scheduler (using this code in my web.xml)
<servlet>
| <servlet-name>JbpmThreadsServlet</servlet-name>
| <servlet-class>org.jbpm.web.JbpmThreadsServlet</servlet-class>
| <load-on-startup>1</load-on-startup>
| </servlet>
| <servlet-mapping>
| <servlet-name>JbpmThreadsServlet</servlet-name>
| <url-pattern>/threads</url-pattern>
| </servlet-mapping>
I receive exceptions on JBoss starting. (In fact, the exceptions appears in loop, so I think JBoss as start, and it's the scheduler which launch the Exception)
The exception threw is :
| java.sql.SQLException: Can't call rollback when autocommit=true
| at com.mysql.jdbc.Connection.rollback(Connection.java:4729)
| at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.jdbcRollback(BaseWrapperManagedConnection.java:535)
| at org.jboss.resource.adapter.jdbc.WrappedConnection.rollback(WrappedConnection.java:460)
| at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
| at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
| at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:154)
| at org.jbpm.svc.Services.close(Services.java:211)
| at org.jbpm.JbpmContext.close(JbpmContext.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.executeCommand(CommandExecutorThread.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.run(CommandExecutorThread.java:79)
| 14:29:08,137 INFO [STDOUT] org.jbpm.persistence.JbpmPersistenceException: couldn't rollback hibernate session
| 14:29:08,137 INFO [STDOUT] at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:156)
| 14:29:08,137 INFO [STDOUT] at org.jbpm.svc.Services.close(Services.java:211)
| 14:29:08,137 INFO [STDOUT] at org.jbpm.JbpmContext.close(JbpmContext.java:139)
| 14:29:08,137 INFO [STDOUT] at org.jbpm.msg.command.CommandExecutorThread.executeCommand(CommandExecutorThread.java:139)
| 14:29:08,137 INFO [STDOUT] at org.jbpm.msg.command.CommandExecutorThread.run(CommandExecutorThread.java:79)
| 14:29:08,137 INFO [STDOUT] Caused by: org.hibernate.TransactionException: JDBC rollback failed
| 14:29:08,137 INFO [STDOUT] at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:170)
| 14:29:08,137 INFO [STDOUT] at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:154)
| 14:29:08,137 INFO [STDOUT] ... 4 more
| 14:29:08,137 INFO [STDOUT] Caused by: java.sql.SQLException: Can't call rollback when autocommit=true
| 14:29:08,137 INFO [STDOUT] at com.mysql.jdbc.Connection.rollback(Connection.java:4729)
| 14:29:08,137 INFO [STDOUT] at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.jdbcRollback(BaseWrapperManagedConnection.java:535)
| 14:29:08,137 INFO [STDOUT] at org.jboss.resource.adapter.jdbc.WrappedConnection.rollback(WrappedConnection.java:460)
| 14:29:08,137 INFO [STDOUT] at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
| 14:29:08,137 INFO [STDOUT] at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
| 14:29:08,137 INFO [STDOUT] ... 5 more
| 14:29:08,137 ERROR [Services] problem closing service 'persistence'
| org.jbpm.persistence.JbpmPersistenceException: couldn't rollback hibernate session
| at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:156)
| at org.jbpm.svc.Services.close(Services.java:211)
| at org.jbpm.JbpmContext.close(JbpmContext.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.executeCommand(CommandExecutorThread.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.run(CommandExecutorThread.java:79)
| Caused by: org.hibernate.TransactionException: JDBC rollback failed
| at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:170)
| at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:154)
| ... 4 more
| Caused by: java.sql.SQLException: Can't call rollback when autocommit=true
| at com.mysql.jdbc.Connection.rollback(Connection.java:4729)
| at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.jdbcRollback(BaseWrapperManagedConnection.java:535)
| at org.jboss.resource.adapter.jdbc.WrappedConnection.rollback(WrappedConnection.java:460)
| at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
| at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
| ... 5 more
| 14:29:08,137 ERROR [CommandExecutorThread] org.jbpm.JbpmException: problem closing services {persistence=org.jbpm.persistence.JbpmPersistenceException: couldn't rollback hibernate session}
| 14:29:08,137 ERROR [SchedulerSession] org.hibernate.MappingException: Named query not known: SchedulerSession.findTimersByDueDate
| 14:29:08,137 INFO [SchedulerThread] runtime exception while executing timers
| org.jbpm.JbpmException: couldn't find timers from the database
| at org.jbpm.db.SchedulerSession.findTimersByDueDate(SchedulerSession.java:88)
| at org.jbpm.scheduler.impl.SchedulerThread.executeTimers(SchedulerThread.java:106)
| at org.jbpm.scheduler.impl.SchedulerThread.run(SchedulerThread.java:70)
| Caused by: org.hibernate.MappingException: Named query not known: SchedulerSession.findTimersByDueDate
| at org.hibernate.impl.AbstractSessionImpl.getNamedQuery(AbstractSessionImpl.java:70)
| at org.hibernate.impl.SessionImpl.getNamedQuery(SessionImpl.java:1260)
| at org.jbpm.db.SchedulerSession.findTimersByDueDate(SchedulerSession.java:82)
| ... 2 more
| 14:29:13,129 ERROR [SchedulerSession] org.hibernate.MappingException: Named query not known: SchedulerSession.findTimersByDueDate
| 14:29:13,129 ERROR [JDBCTransaction] JDBC rollback failed
| java.sql.SQLException: Can't call rollback when autocommit=true
| at com.mysql.jdbc.Connection.rollback(Connection.java:4729)
| at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.jdbcRollback(BaseWrapperManagedConnection.java:535)
| at org.jboss.resource.adapter.jdbc.WrappedConnection.rollback(WrappedConnection.java:460)
| at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
| at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
| at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:154)
| at org.jbpm.svc.Services.close(Services.java:211)
| at org.jbpm.JbpmContext.close(JbpmContext.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.executeCommand(CommandExecutorThread.java:139)
| at org.jbpm.msg.command.CommandExecutorThread.run(CommandExecutorThread.java:79)
| 14:29:13,160 INFO [SchedulerThread] runtime exception while executing timers
| org.jbpm.JbpmException: couldn't find timers from the database
| at org.jbpm.db.SchedulerSession.findTimersByDueDate(SchedulerSession.java:88)
| at org.jbpm.scheduler.impl.SchedulerThread.executeTimers(SchedulerThread.java:106)
| at org.jbpm.scheduler.impl.SchedulerThread.run(SchedulerThread.java:70)
| Caused by: org.hibernate.MappingException: Named query not known: SchedulerSession.findTimersByDueDate
| at org.hibernate.impl.AbstractSessionImpl.getNamedQuery(AbstractSessionImpl.java:70)
| at org.hibernate.impl.SessionImpl.getNamedQuery(SessionImpl.java:1260)
| at org.jbpm.db.SchedulerSession.findTimersByDueDate(SchedulerSession.java:82)
| ... 2 more
I try to search about this on google and I find some patchs at :
-http://fisheye.jboss.org/viewrep/JBPM/jbpm.3/jpdl/jar/src/main/java/org/jbpm/persistence/db/DbPersistenceService.java?r1=1.4&r2=1.5
-http://jira.jboss.com/jira/secure/attachment/12312800/jbpm_session_already_closed_exception.patch
So, I patch my JBPM, rebuild the jar with ant but I always have this exceptions.
Did someone have a clue that can help me to find why this Exceptions is throwing ? (Or maybee just a method to set autocommit to false into a datasource file with the mysql driver ^^)
Thanks and goodbye
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3996601#3996601
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3996601
More information about the jboss-user
mailing list