JBPM 6.1 cannot resume process

We can pause a process instance as follows:

org.jbpm.process.instance.ProcessInstance processInstance = //...; processInstance.setState(STATE_SUSPENDED); 

and resume :

 kieSession.getWorkItemManager().completeWorkItem(processInstance.getId(), params); 

but it won’t work! ... what's the problem?

Thanks.

0
source share
1 answer

To resume a process, use processInstance.setState (ProcessInstance.STATE_ACTIVE). WorkItemManager works with workItems (web service calls, human tasks, client handlers, etc.), and not processInstances.

Try using the following code:

  KieSession ksession=...... ProcessInstance processInstance = ksession.startProcess(...... //suspend: SuspendProcessInstanceCommand susp=new SuspendProcessInstanceCommand(); susp.setProcessInstanceId(processInstance.getId()); ksession.execute(susp); //confirm suspended: assertEquals(ProcessInstance.STATE_SUSPENDED, ksession.getProcessInstance(processInstance.getId()).getState()); //resume: ResumeProcessInstanceCommand res=new ResumeProcessInstanceCommand(); res.setProcessInstanceId(processInstance.getId()); ksession.execute(res); //confirm active: assertEquals(ProcessInstance.STATE_ACTIVE, ksession.getProcessInstance(processInstance.getId()).getState()); 
+1
source

Source: https://habr.com/ru/post/984572/


All Articles