jbpm流程发布以及流程实例管理

1、流程部署

一、流程引擎获取

ProcessEngine processEngine = new Configuration()
.setResource("my-own-configuration-file.xml")
.buildProcessEngine();

实际开发中咱们通常经过spring配置文件经过相关方法获取。java

二、根据流程引擎获取相应地webservice服务。

RepositoryService repositoryService = processEngine.getRepositoryService();
ExecutionService executionService = processEngine.getExecutionService();
TaskService taskService = processEngine.getTaskService();
HistoryService historyService = processEngine.getHistoryService();
ManagementService managementService = processEngine.getManagementService();

三、部署流程

RepositoryService 包含了用来管理发布资源的全部方法。在第一个例子中,咱们会使用web

RepositoryService 从classpath 中部署一个流程资源。spring

String deploymentid = repositoryService.createDeployment()
.addResourceFromClasspath("org/jbpm/examples/services/Order.jpdl.xml")
.deploy();


2、流程实例管理

一、启动一个流程实例

下面是为流程定义启动一个新的流程实例的最简单也是最经常使用的方法:ui

ProcessInstance processInstance = executionService.startProcessInstanceByKey("ICL");

上面service 的方法会去查找key 为ICL 的最新版本的流程定义, 而后在最新的流程定义里启动spa

流程实例。code

当insurance claim 流程部署了一个新版本, startProcessInstanceByKey 方法会自动切换到最xml

新部署的版本。资源


二、删除实例

executionService.deleteProcessInstanceCascade(processInstance.getId());


三、终止流程

 executionService.endProcessInstance(processInstance.getId(), "cancle");
相关文章
相关标签/搜索