activiti 流程走向異常 會籤節點變數賦值為空問題
阿新 • • 發佈:2019-01-06
今天遇到一個問題,在會簽發起子流程時,沒有給節點分配人,結果導致,流程走向異常,細節如下。
如圖 流程如果正常流轉的話 應該走圈紅的部分 結束 但現在走的是圈紫色的部分 這個流程已經走錯了,那這是什麼原因呢?
經過仔細排查,認真分析,機智的我終於發現了,問題所在,不過參考資料較少,以下結論均為自己實踐得出,可能有不妥之處,歡迎指正。
我這個問題的原因是:多例項子流程,再構建流程的時候,主流程會傳給子流程一個變數集合,activiti會根據集合的長度,遍歷集合建立多個例項,我這個之所以走錯,
是因為我在傳值得時候將集合傳的值為空,導致子流程無法建立任務,出現異常,這時流程預設回到上一個閘道器隨機選擇了一個走向。
如上圖就是再構建流程時的變數。我之所以出現這個問題,就是再監聽中給Teams賦值為空。
Map<String, Object> taskParameters = new HashMap<String, Object>();
taskParameters.put("Teams", groupAndUserList);
taskEntity.setVariables(taskParameters);
就是這個變數! 會籤節點一定要注意這個變數,千萬不能為空,一旦為空流程就會走錯方向!