JBPM4各節點說明之一

2021-06-01 18:23:23 字數 1954 閱讀 3607

一、start節點

start表示了乙個流程在**開始執行。在乙個流程至少得有乙個start節點。乙個start節點中必須有乙個外流遷移(transition)並且這個轉移

在流程開始時就會執行。

到目前為止,乙個流程有且只有乙個start節點。 元素

數量描述

transition

1外流轉移

二、state節點

state表示了乙個等待狀態。流程的執行將會等到有通過api提供的外力觸發。state節點除了常用的節點內容(name, transition)外沒有其他的屬性

或元素。

2.1、state序列

如以下例項,展現了乙個通過transition鏈結的state序列

此序列的**如下:

你可以通過以下方式啟動執行:

processinstance processinstance =

executionservice.startprocessinstancebykey("statesequence");

當你執行啟動此流程後,此流程將會停留在a節點上,可以通過方法signalexecution提供乙個外力使其繼續執行。如下**所示:

execution executionina = processinstance.findactiveexecutionin("a");

assertnotnull(executionina);

processinstance = executionservice.signalexecutionbyid(executionina.getid());

execution executioninb = processinstance.findactiveexecutionin("b");

assertnotnull(executioninb);

processinstance = executionservice.signalexecutionbyid(executioninb.getid());

execution executioninc = processinstance.findactiveexecutionin("c");

assertnotnull(executioninc);

2.2、選擇方式state

下面這個例子將向你展現state如何被用為提供乙個選擇外力來決定流程的走向。

對應的**如下所示:

我們可以通過以下的方法啟動這個流程

processinstance processinstance = executionservice

.startprocessinstancebykey("statechoice");

現在,我們假設流程已經執行到了wait for response節點。此流程將會在這裡等待直到乙個外力觸發此流程。由於此state節點有兩個流出轉移,在外力觸發中給的標誌名稱將會匹配外流轉移中的名稱來確定流程的流向。所以當我們提供accept時,如下:

string executionid = processinstance

.findactiveexecutionin("wait for response")

.getid();

processinstance = executionservice.signalexecutionbyid(executionid, "accept");

asserttrue(processinstance.isactive("submit document"));

流程將通過名稱為accept的外流轉移繼續執行。同樣當我們提供乙個名稱為reject的觸發時,流程會通過名稱為reject的外流轉移繼續執行。

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...

jbpm4 引數設定

task test 2 xmlns description 測試型別 這樣是無法取到 description的 正確寫法是這樣的 task test 2 xmlns 測試型別 流程 xmlns 發布到資料庫中的時候會變成 流程 key process xmlns 這樣發布到資料 庫中,流程名稱就是中...

jbpm4流程服務介紹

1 流程引擎processengine的構建方式如下三種 2 流程引擎提供的主要服務介面如下 2.1 流程資源repositoryservice rs包含了管理流程定義的所有方法 發布 刪除 掛起和恢復 檢視 2.1.1 發布流程 2.1.2 刪除流程 2.1.3 掛起和恢復流程 2.1.4 檢視流...