On 14 Jul 2017, at 08:40, net.han...@gmail.com wrote:
Hi,
does anybody know a tutorial, which describes how to develop a custom start timer for jBPM 7.0 similar to this tutorial for custom work items?
--
You received this message because you are subscribed to the Google Groups "jBPM Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-developme...@googlegroups.com.
To post to this group, send email to jbpm-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-development/ba0c8545-863d-4efa-a66b-0bab041d3299%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-development/2a1ea22c-a100-4da4-9f0f-d49131e2dab7%40googlegroups.com.
import java.util.Calendar;
import java.util.Timer;
import org.drools.core.process.instance.WorkItemHandler;
import org.kie.api.runtime.process.WorkItem;
import org.kie.api.runtime.process.WorkItemManager;
public class EnergyTimer implements WorkItemHandler {
public EnergyTimer(){
}
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MINUTE, 2);
Timer timer = new Timer();
timer.schedule(new EnergyTimerScheduledTask(manager, workItem.getId()), calendar.getTime());
}
public void abortWorkItem(WorkItem workItem, WorkItemManager manager) {
manager.abortWorkItem(workItem.getId());
}
}import java.util.TimerTask;
import org.kie.api.runtime.process.WorkItemManager;
public class EnergyTimerScheduledTask extends TimerTask {
private WorkItemManager manager;
private long workItemId;
public EnergyTimerScheduledTask(WorkItemManager manager, long workItemId) {
this.manager = manager;
this.workItemId = workItemId;
System.out.println("EnergyTimerScheduledTask init");
}
@Override
public void run() {
System.out.println("EnergyTimerScheduledTask run");
synchronized (this.manager) {
this.manager.completeWorkItem(this.workItemId, null);
}
}
}2017-08-18 14:04:27,369 INFO [stdout] (Timer-2) EnergyTimerScheduledTask run
2017-08-18 14:04:27,372 WARN [org.drools.persistence.api.TransactionSynchronizationRegistryHelper] (Timer-2) Unable to put resource org.kie.api.persistence.jpa.CmdScopedEntityManager value org.hibernate.jpa.internal.EntityManagerImpl@1044dd88 due to No transaction is running
2017-08-18 14:04:27,373 ERROR [stderr] (Timer-2) Exception in thread "Timer-2" javax.persistence.TransactionRequiredException: Explicitly joining a JTA transaction requires a JTA transaction be currently active
2017-08-18 14:04:27,373 ERROR [stderr] (Timer-2) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:1545)
2017-08-18 14:04:27,373 ERROR [stderr] (Timer-2) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:1530)
2017-08-18 14:04:27,374 ERROR [stderr] (Timer-2) at org.drools.persistence.jpa.AbstractPersistenceContextManager.getCommandScopedEntityManager(AbstractPersistenceContextManager.java:107)
2017-08-18 14:04:27,374 ERROR [stderr] (Timer-2) at org.jbpm.persistence.JpaProcessPersistenceContextManager.getCommandScopedEntityManager(JpaProcessPersistenceContextManager.java:47)
2017-08-18 14:04:27,374 ERROR [stderr] (Timer-2) at org.drools.persistence.jpa.JpaPersistenceContextManager.getCommandScopedPersistenceContext(JpaPersistenceContextManager.java:59)
2017-08-18 14:04:27,374 ERROR [stderr] (Timer-2) at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.getPersistenceContext(JPAWorkItemManager.java:137)
2017-08-18 14:04:27,374 ERROR [stderr] (Timer-2) at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.completeWorkItem(JPAWorkItemManager.java:145)
2017-08-18 14:04:27,375 ERROR [stderr] (Timer-2) at de.ten.jbpm.EnergyTimerScheduledTask.run(EnergyTimerScheduledTask.java:22)
2017-08-18 14:04:27,375 ERROR [stderr] (Timer-2) at java.util.TimerThread.mainLoop(Timer.java:555)
2017-08-18 14:04:27,375 ERROR [stderr] (Timer-2) at java.util.TimerThread.run(Timer.java:505)Why does the exception is fired--
You received this message because you are subscribed to the Google Groups "jBPM Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-developme...@googlegroups.com.
To post to this group, send email to jbpm-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-development/322fe302-b85f-4f80-b0ff-99a5dfa3c119%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-development/43a1e094-ea79-4fab-b602-24109608320c%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "jBPM Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-developme...@googlegroups.com.
To post to this group, send email to jbpm-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-development/a3aab867-1860-4d84-a218-595fee97a085%40googlegroups.com.