[jboss-user] [JBoss jBPM] - Re: Problem with Timer execution. process classloader can't

a.wintersteiger do-not-reply at jboss.com
Mon May 19 12:01:16 EDT 2008


Hi rayun,

I have exactly the same problem and - thanks for posting - am working on it since last friday. I have built a simple test process and the problem comes in with *even only one timer* - but only when you fork! I have tried the same thing without any forked executions, works fine.

But I only get the StaleObjectStateException, like this:

anonymous wrote : 
  | 17:42:59,231 INFO  [DbPersistenceService] optimistic locking failed
  | 17:42:59,247 INFO  [Services] problem closing service 'persistence': optimistic locking failed
  | 17:42:59,309 WARN  [ProxyWarnLog] Narrowing proxy to class org.jbpm.job.Timer - this operation breaks ==
  | 17:42:59,341 ERROR [AbstractFlushingEventListener] Could not synchronize database state with session
  | org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jbpm.job.Timer#271874]
  | 	at org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1765)
  | 	at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2523)
  | 	at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2697)
  | 	at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:74)
  | 	at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
  | 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
  | 	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:146)
  | 	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
  | 	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
  | 	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
  | 	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
  | 	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
  | 	at org.jbpm.persistence.db.DbPersistenceService.commit(DbPersistenceService.java:256)
  | 	at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:214)
  | 	at org.jbpm.svc.Services.close(Services.java:225)
  | 	at org.jbpm.JbpmContext.close(JbpmContext.java:139)
  | 	at org.jbpm.job.executor.JobExecutorThread.executeJob(JobExecutorThread.java:184)
  | 	at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:64)
  | 

with this process definition:

  | <process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="simple">
  |    <start-state name="start">
  | 		<transition to="fork1" name="to_state">
  | 		</transition>
  | 	</start-state>
  | 
  |    <state name="first">
  |    		<timer duedate="2 Minutes" name="Wait2Minutes" transition="to_end">
  | 			<action></action>
  | 		</timer>
  | 		<transition to="join1" name="to_end">
  | 		</transition>
  | 	</state>
  | 
  | 	<fork name="fork1">
  | 		<transition to="node1"></transition>
  | 		<transition to="first" name="to first"></transition>
  | 	</fork>
  | 
  | 	<join name="join1">
  | 		<transition to="end"></transition>
  | 	</join>
  | 
  | 	<node name="node1">
  | 		<transition to="join1"></transition>
  | 	</node>
  | 
  | 
  | 	<end-state name="end"></end-state>
  | </process-definition>
  | 
Your ClassNotFoundException looks to me like you have forgotten to deploy your handler classes together with the process...?!? Maybe can tell more tomorrow.

Andy

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4151815#4151815

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4151815



More information about the jboss-user mailing list