Hello,
i am working with jbpm 3.2 from CVS in an enterprise environment (JBoss 4.0.5.GA). I use
the jbpm-enterprise.jar for ejb communication.
Everything works fine, except the repeat-functionality of the timers. I use the following
simple process:
<process-definition
| xmlns="" name="test">
| <swimlane name="initiator"></swimlane>
| <start-state name="start">
| <task name="task" swimlane="initiator"></task>
| <transition name="" to="sometask"></transition>
| </start-state>
| <end-state name="end1"></end-state>
| <task-node name="sometask">
| <timer name="reminder" duedate="30 seconds" repeat="10
seconds" >
| <action class='MessageActionHandler' />
| </timer>
| <task name="task1" swimlane="initiator"></task>
| <transition name="" to="end1"></transition>
| </task-node>
| </process-definition>
After execution of the task-node, a job for the timer is created and it becomes executed
at the duedate. The job keeps staying in db but there is no further timer execution
(repeat after 10 sec).
With jbpm 3.1.4 (no ejb) i got no such problems
jbpm.cfg.xml:
<service name="scheduler"
factory="org.jbpm.scheduler.ejbtimer.EjbSchedulerServiceFactory" />
The following excerpt is from jboss logs (hibernate messages ignored):
2007-06-12 12:33:04,593 DEBUG [org.jboss.ejb.txtimer.TimerImpl] run:
[id=1,target=[target=jboss.j2ee:jndiName=local/TimerServiceBean@22519108,service=EJB],remaining=0,periode=0,active]
| 2007-06-12 12:33:04,593 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState:
in_timeout
| 2007-06-12 12:33:04,625 DEBUG [org.jbpm.scheduler.ejbtimer.TimerServiceBean] ejb timer
[id=1,target=[target=jboss.j2ee:jndiName=local/TimerServiceBean@22519108,service=EJB],remaining=-32,periode=0,in_timeout]
fires
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.ejb.impl.CommandServiceBean] handing over the
command execution to the command service
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.configuration.JbpmContextInfo] creating jbpm
context with service factories '[tx, message, scheduler, logging, persistence,
authentication]'
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.JbpmContext] creating
org.jbpm.JbpmContext@1d3c9ab
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.ejb.impl.CommandServiceBean] executing
org.jbpm.scheduler.ejbtimer.ExecuteTimerCommand@15d1f6a
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.persistence.db.DbPersistenceServiceFactory]
creating persistence service
|
| [..]
|
| 2007-06-12 12:33:04,640 DEBUG [org.jbpm.scheduler.ejbtimer.ExecuteTimerCommand]
executing timer 38
|
| [...]
|
| 2007-06-12 12:33:04,656 DEBUG [org.jbpm.job.Timer] executing timer
'timer(reminder,12:33:04,000)'
|
| [...]
|
| 2007-06-12 12:33:04,703 INFO [STDOUT] Timer executed
| 2007-06-12 12:33:04,703 DEBUG [org.jbpm.job.Timer] updated timer for repetition
'timer(reminder,12:33:14,000)' in '9297' millis
| 2007-06-12 12:33:04,703 DEBUG [org.jbpm.JbpmContext] closing JbpmContext
| 2007-06-12 12:33:04,703 DEBUG [org.jbpm.svc.Services] closing service
'persistence': org.jbpm.persistence.db.DbPersistenceService@131b732
| 2007-06-12 12:33:04,703 DEBUG [org.jbpm.svc.Services] closing service 'tx':
org.jbpm.tx.TxService@f250f3
|
| [...]
|
| 2007-06-12 12:33:04,812 DEBUG [org.jboss.ejb.txtimer.TimerImpl] commit:
[id=1,target=[target=jboss.j2ee:jndiName=local/TimerServiceBean@22519108,service=EJB],remaining=-219,periode=0,in_timeout]
| 2007-06-12 12:33:04,812 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState:
expired
| 2007-06-12 12:33:04,812 DEBUG [org.jboss.ejb.txtimer.TimerImpl] killTimer:
|
Is it correct, that the timer becomes expired (setTimerState: expired)?
Does anyone has an idea, why my timers are not repeated?
Many thanks in advance for your help!
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4053469#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...