loveExtJs 2010-05-26 09:49
浏览 273
已采纳

JBPM4.3 怎么获得历史任务的activityName?

我用historyService.createHistoryTaskQuery().executionId(executionId); 查出流程的所有历史任务。
怎么查每个任务的activityName啊?API HistoryActivityInstanceQuery 里好像没提供相应的方法?

  • 写回答

2条回答 默认 最新

  • weixin_42518082 2010-05-26 11:33
    关注

    [quote]为什么我 historyTask.getOutcome();得到的都是“jbpm_no_task_outcome_specified_jbpm”这个字符串阿?[/quote]
    [b][color=blue]jbpm_no_task_outcome_specified_jbpm 说明流转路径是默认的流转路径, 你可以通过获得ProcessDefinition , 再获得该节点的默认路径的.[/color][/b]
    [code="java"]
    // 这里是代码片段, 不是完整的
    Map map = processDefinition.getActivitiesMap();

    String activityName = activityInstance.getActivityName();
    String transitionName = hai.getTransitionName();

    if (transitionName == null || transitionName.length() == 0
    || Task.STATE_COMPLETED.equals(transitionName)
    || TaskConstants.NO_TASK_OUTCOME_SPECIFIED.equals(transitionName)) {
    transitionName = "";
    Activity activity = map.get(activityName); // 得到Activity
    if (activity != null) { // 下面是得到默认的transitionName
    Transition transition = activity.getDefaultOutgoingTransition();
    if (transition == null && (activity.getOutgoingTransitions() != null)
    && (activity.getOutgoingTransitions().size() == 1)) {
    transition = activity.getOutgoingTransitions().get(0);
    }
    if (transition != null) {
    transitionName = transition.getName();
    }
    }
    }
    [/code]

    [quote]还有task和 Activity 到底有什么区别呀? [/quote]
    [color=blue][b]task相当于Activity 的子集, Activity包含task[/b][/color]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!