歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> JBPM流程設計系列—入門簡介

JBPM流程設計系列—入門簡介

日期:2017/3/1 9:36:48   编辑:Linux編程

JBPM是著名的開源流程引擎框架,具有非常高效的流程引擎及可視化流程設計器,使用主流的BPMN流程標准。它包含一系列非常有用的modeler,如DataModeler,FormModeler等,可以快速開發基於流程的程序,可以使非開發的業務人員也可以輕松實現業務流程構建及優化工作,大大提高了企業的流程建模效率。

JBPM主要的API有兩個包:

  1. org.kie.internal.io.*
  2. org.kie.api.*

JBPM核心的兩個類RuntimeManager和RuntimeEngine的實現

public static RuntimeManager createRuntimeManager(String bpmn_name) {
RuntimeEnvironment environment = RuntimeEnvironmentBuilder.Factory
.get()
.newDefaultInMemoryBuilder()
.addAsset(ResourceFactory.newClassPathResource(bpmn_name),
ResourceType.BPMN2).get();
RuntimeManager manager = RuntimeManagerFactory.Factory.get()
.newSingletonRuntimeManager(environment);
return manager;
}

public static RuntimeEngine createRuntimeEngine(RuntimeManager manager) {
RuntimeEngine engine = manager.getRuntimeEngine(EmptyContext.get());
return engine;
}

當獲取到RuntimeEngine之後,就可以對流程進行相應的操作了,這裡主要介紹兩個類,KieSession和TaskService。

因為在日常的開發中,流程主要是實現的組織架構的審批流,所以大部分的流程操作都需要有人的參與,所以就需要

大量的使用Human Task,所以就需要TaskService這個類來實時監控KieSession中流程狀態的變化,所以通過TaskService

可以獲取所有的任務相關信息。

BPMN可視化流程分析器設計注意點:

流程設計主要包含兩部分內容,流程實例設計,節點實例設計,其中:

  1. 流程實例節點主要的設置內容有,流程實例ID,流程實例名,包,流程變量數字,版本號,其中流程實例ID的規則是:包名+流程名(小寫)。
  2. 節點實例節點主要的設置內容有,ActorID,Comment,GroupID,Name,Parameter Mapping,Result Mapping,Skippable,TaskName.

如何獲取當前節點的任務列表

List<TaskSummary> tasks = taskService.getTasksAssignedAsPotentialOwner("krisv", "en-UK");
TaskSummary task = tasks.get(0);

啟動任務

taskService.start(task.getId(), "krisv");

完成任務

taskService.complete(task.getId(), "krisv", results);
在每個節點處,節點任務都包含四個步驟:

  1. 查詢任務列表
  2. 啟動任務
  3. 完成任務
  4. 任務節點跳轉

JBPM4.4部署在Tomcat6以上的版本jar包沖突 http://www.linuxidc.com/Linux/2014-04/99476.htm

JBPM工作流開發指南 PDF http://www.linuxidc.com/Linux/2014-06/103823.htm

JBPM流程實例(PV)Process Variables http://www.linuxidc.com/Linux/2014-06/102859.htm

JBPM流程實例(PI)Process Instance http://www.linuxidc.com/Linux/2014-06/102858.htm

JBPM流程部署校驗 http://www.linuxidc.com/Linux/2014-06/102860.htm

JBPM 的詳細介紹:請點這裡
JBPM 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved