1) 流程引擎processengine的構建方式如下三種:
2) 流程引擎提供的主要服務介面如下:
2.1) 流程資源repositoryservice:rs包含了管理流程定義的所有方法(發布、刪除、掛起和恢復、檢視)
2.1.1) 發布流程:
2.1.2) 刪除流程:
2.1.3)掛起和恢復流程:
2.1.4) 檢視流程:
2.2) 執行服務executionservice:es主要用於維護流程例項(processinstance),包含流程例項的查詢和流程變數的操作。
2.2.1) 啟動新流程:
2.3) 任務服務taskservice:ts
2.3.1) 任務列表訪問
2.3.2) 讀取任務節點相關資料
2.3.3) 完成任務
1) jbpm4的18張表如下:
2) 流程定義相關的佈署資訊就儲存在jbpm4_deployment、jbpm4_deployprop及jbpm4_lob中。上傳乙個包含png和jpdl.xml的zip包後,jbpm4_deployment多一條記錄jbpm4_deployprop多三條,jbpm4_lob多兩條。
3) jbpm4_hist_procinst與jbpm4_hist_actinst分別存放的是process instance、activity instance的歷史記錄。
4) jbpm4_execution主要是存放jbpm4的執行資訊。
5) jbpm4_task存放需要人來完成的activities,需要人來參與完成的activity被稱為task
6) jbpm4_participation存放participation的資訊,participation的種類有candidate、client、owner、replaced assignee和viewer。而具體的participation既可以是單一使用者,也可以是使用者組。
7) jbpm4_swimlane。swim lane是一種runtime process role。通過swim lane,多個task可以一次分配到同一actor身上。
8) jbpm4_variable 存的是進行時的臨時變數。
9) jbpm4_hist_detail儲存variable的變更記錄。
10) jbpm4_hist_var儲存歷史的變數。
11) jbpm4_hist_tasktask的歷史資訊。
12) jbpm4_id_group,jbpm_id_membership,jbpm4_id_user 這三張表實現基本的許可權控制。
13) jbpm4_job 存放的是timer的定義。
1) 新建web工程,匯入jbpm所需jar包,匯入jbpm配置檔案
配置本地資料庫(demo為mysql)
2) 設計流程圖並指定節點屬性
流程圖如下:
相應的xml檔案:
3) 新建ossservlet,初始化流程引擎及介面服務
提出問題:將問題提交人存入map,在start流程時傳遞流程變數customer
?#
?taskservice.completetask(task.getid());
其他流程節點方法處理類似。
原文出處--------------
JBPM4 流程例項變數訪問
設定流程例項變數 建立流程引擎 processengine processengine configuration.getprocessengine 獲得執行服務 executionservice executionservice processengine.getexecutionservice ...
jbpm4自定義流程設計
一 流程圖的設計,以及生成xml檔案的有關描敘 1.任務節點上 task元素必須區分節點是什麼型別的任務,用name屬性辨別 description對任務進行描敘。2.規則 hui 0會簽,chuan 0串籤 其中數字0是根據畫的任務節點數遞增的,確保任務名稱不重複。會簽 assignee emp1...
JBPM4 獲取任務
示例 1 xml version 1.0 encoding utf 8 23 process name test key test xmlns 4 start name start1 g 255,35,48,48 5 transition name 提交到科長 to 科長審批 g 63,25 6st...