取得任务节点的对外所有跳转Transition对象

在流程的任务里,我们需要把当前的任务节点的下一步的跳转选择显示出来,让用户方便选择跳转。如果我们拿到的是TaskId,又如何显示其对应的下一步跳转节点呢。

 

我们知道taskService里有一个方法可以取得其所有跳转的名称,如下所示:

 

Set<String>outcomes=taskService.getOutcomes(taskId);

 

 

而有时我们需要更方便的信息显示,我们不仅需要使用当前节点的跳转路径,同时希望显示给用户当前节点的对应下面的跳转的节点是什么名称。这样我们需要扩展一下,如下所示:

 

Java代码

 

public List<Transition> getTransitionsByTaskId(String taskId){   
        TaskImpl task = (TaskImpl) taskService.getTask(taskId);   
        EnvironmentFactory environmentFactory = (EnvironmentFactory) processEngine;   
        Environment env = environmentFactory.openEnvironment();   
        try {   
            ProcessDefinitionImpl pd = (ProcessDefinitionImpl) task   
                    .getProcessInstance().getProcessDefinition();   
            ActivityImpl activityFind = pd.findActivity(task.getActivityName());   

            if (activityFind != null) {   
                return activityFind.getOutgoingTransitions();   
            }   

        } finally {   
            env.close();   
        }   
        return null;   
     } 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值