在我們的工作流程,我們有幾個多實例調用活動,如下所示:Activiti的多實例與空收集每個迴路
<callActivity id="loopFoos" calledElement="${workflowResolver.resolveWorkflowName(foo)}">
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${foos}" activiti:elementVariable="foo" />
</callActivity>
的問題是,一些集合是空的,並導致例外,因爲activiti假定集合中至少有一個元素。我們可以圍繞所有的子工作流程調用做出決定,但是這會污染工作流程圖並顯示與業務無關的詳細信息。
我們需要是用java的每個像
for (Foo foo : foos) {
// call workflow
}
其中空的集合根本就沒有進入循環的行爲。
有沒有辦法讓activiti像這樣行事?如果沒有,你將如何建模工作流程?