Problem with timers (org.jbpm.JbpmException: couldn't execut
e2rd Sep 18, 2007 7:41 AMHi,
I have some problem with timers.
In my process definition I have a timer in some state:
<state name="watering"> <timer name="timer_eb" duedate="2 minutes" transition="overdose" > <action class='com.comarch.oss.core.controller.UIControllerHandler' /> </timer> ... </state>
I expect that timer will fire 2 minutes after state enter and defined transition and action will execute.
But nothing happens.
Instead of that in server.log file I found:
2007-09-17 13:16:26,250 DEBUG [org.jboss.ejb.txtimer.TimerImpl] run: [id=1,target=[target=jboss.j2ee:service=EJB3,ear=oss-enterprise.ear,jar=jbpm-enterprise.jar,name=TimerServiceBean],remaining=0,periode=0,active]
2007-09-17 13:16:26,250 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: in_timeout
2007-09-17 13:16:26,250 DEBUG [org.jbpm.scheduler.ejbtimer.TimerServiceBean] ejb timer [id=1,target=[target=jboss.j2ee:service=EJB3,ear=oss-enterprise.ear,jar=jbpm-enterprise.jar,name=TimerServiceBean],remaining=0,periode=0,in_timeout] fires
2007-09-17 13:16:26,250 ERROR [org.jbpm.scheduler.ejbtimer.TimerServiceBean] org.jbpm.JbpmException: couldn't execute timer
2007-09-17 13:16:26,250 ERROR [org.jboss.ejb.txtimer.TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: org.jbpm.JbpmException: couldn't execute timer
2007-09-17 13:16:26,250 DEBUG [org.jboss.ejb.txtimer.TimerImpl] Timer was not registered with Tx, resetting state: [id=1,target=[target=jboss.j2ee:service=EJB3,ear=oss-enterprise.ear,jar=jbpm-enterprise.jar,name=TimerServiceBean],remaining=0,periode=0,in_timeout]
2007-09-17 13:16:26,250 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: expired
2007-09-17 13:16:26,250 DEBUG [org.jboss.ejb.txtimer.TimerImpl] killTimer: [id=1,target=[target=jboss.j2ee:service=EJB3,ear=oss-enterprise.ear,jar=jbpm-enterprise.jar,name=TimerServiceBean],remaining=0,periode=0,expired]
2007-09-17 13:17:44,703 DEBUG [org.jboss.resource.connectionmanager.IdleRemover] run: IdleRemover notifying pools, interval: 450000
Earlier my timer is properly created, started and activated:
2007-09-17 13:14:26,234 DEBUG [org.jbpm.graph.def.GraphElement] executing action 'CreateTimerAction(e8cc94)'
2007-09-17 13:14:26,234 DEBUG [org.jbpm.graph.exe.Token] token[7705] is locked by token[7705]
2007-09-17 13:14:26,250 DEBUG [org.jbpm.graph.def.GraphElement] event 'timer-create' on 'State(watering)' for 'Token(/)'
2007-09-17 13:14:26,250 DEBUG [org.jbpm.scheduler.ejbtimer.EjbSchedulerService] creating timer timer(timer_eb,13:16:26,250)
2007-09-17 13:14:26,265 DEBUG [org.jbpm.scheduler.ejbtimer.TimerServiceBean] creating timer timer(timer_eb,13:16:26,250) in the ejb timer service
2007-09-17 13:14:26,312 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: created
2007-09-17 13:14:26,328 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: started_in_tx
2007-09-17 13:14:26,875 DEBUG [org.hibernate.pretty.Printer] org.jbpm.scheduler.def.CreateTimerAction{repeat=null, actionExpression=null, dueDate=2 minutes, timerAction=org.jbpm.graph.def.Action#7652, referencedAction=null, id=7651, isAsync=false, processDefinition=null, isPropagationAllowed=true, timerName=timer_eb, event=org.jbpm.graph.def.Event#7650, actionDelegation=null, transitionName=overdose, name=null}
2007-09-17 13:14:26,953 DEBUG [org.jboss.ejb.txtimer.TimerImpl] commit: [id=1,target=[target=jboss.j2ee:service=EJB3,ear=oss-enterprise.ear,jar=jbpm-enterprise.jar,name=TimerServiceBean],remaining=119297,periode=0,started_in_tx]
2007-09-17 13:14:26,953 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: active
What does that error (org.jbpm.JbpmException: couldn't execute timer) stand for?
How to resolve it?
Best Regards,
e2rd