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条)

报告相同问题?

悬赏问题

  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名