Alfresco Activiti BPM动态获取候选组或用户

Alfresco Activiti BPM dynamically get candidate groups or users

是否可以在Activiti中动态定义candidateGroupscandidateUsers? 我想做这样的事情:

<userTask id="approve" name="approve" activiti:candidateUsers="${myWorkflowService.getCandidateUsers()}"></userTask>

然后在 Java class、MyWorkflowService 中,我将方法 getCandidateUsers() 定义为 return users/groups 的列表.

我是这样解决的:

我在 userTasK:

之前添加了一个 executionListener 到转换

<activiti:executionListener event="start" expression="${myWorkflowService.getCandidateUsers(execution)}"></activiti:executionListener>

在我的 class 中,我定义了这个方法:

public void getCandidateUsers(DelegateExecution execution) { execution.setVariable("approver", "foo"); }