在jBPM中,历史的任务,通过historyService可以查询执行顺序
在http://zybing.iteye.com/admin/blogs/739903 中,已经讲了,可以把已经结束的任务
,通过查询一步步获取执行的顺序:
列出执行的过程:
// 根据任务开始的时间进行排序,列出来
List<HistoryActivityInstance> haInstance = historyService
.createHistoryActivityInstanceQuery().processInstanceId(instanceId)
.orderAsc(HistoryProcessInstanceQuery.PROPERTY_STARTTIME)
.list();
// 显示每一步骤任务的名称
Iterator<HistoryActivityInstance> it = haInstance.iterator();
while( it.hasNext() ) {
HistoryActivityInstance ha = it.next();
system.out.println( ha.getActivityName() );
}
对于执行到一半的任务呢?
做了一个实验:开始一个任务,只完成中间的一半任务,通过historyService进行查询(根据ProcessInstanceId查)
结果可以一路查到当前正在Activity的任务,说明也是可以的