%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="org.jbpm.api.ProcessEngine" %>
<%@ page import="org.jbpm.api.Configuration" %>
<%@ page import="org.jbpm.api.ExecutionService" %>
<%@ page import="org.jbpm.api.ProcessInstance" %>
<%@ page import="java.util.List" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
终止流程实例
<%
String idStr = request.getParameter("id");
if (StringUtils.isBlank(idStr)) {
out.println("终止实例:id=实例ID,终止所有实例:id=all");
return;
}
ProcessEngine processEngine = Configuration.getProcessEngine();
ExecutionService executionService = processEngine.getExecutionService(); // 流程实例管理者
if ("all".equals(idStr)) {
List activeInstances = executionService.createProcessInstanceQuery().list();
out.println("要终止的流程实例数:"+ activeInstances.size() +"
");
for (ProcessInstance processInstance1 : activeInstances) {
String curId = processInstance1.getId();
out.println("终止 流程实例 id="+ curId +"
");
executionService.endProcessInstance(curId, "终止 " + curId);
}
} else {
executionService.endProcessInstance(idStr, "终止 " + idStr);
}
// 查询当前执行的流程实例
List activeInstances = executionService.createProcessInstanceQuery().list();
out.println("
流程实例数:"+ activeInstances.size() +"
");
for (ProcessInstance processInstance1 : activeInstances) {
// out.println("流程实例key:"+processInstance1.getKey() +"
");
// out.println("流程实例Name:"+processInstance1.getName() +"
");
out.println("流程实例 id="+processInstance1.getId() +"
");
out.println("流程定义Id:"+processInstance1.getProcessDefinitionId() +"
");
}
%>