jBPM(十二): 流程运行的历史和轨迹与ProcessLog

   接触jBPM一段时间后,听说过jBPM不支持对流程运行的历史和轨迹的查看, 这样在项目中实现类似需求时也就没有硬从jBPM的API上去找这方面的些许支持, 而依照一些例子,直接做了个粗糙的扩展. 现在项目做完了, 在深入研究jBPM时,发现TaskAssignLog这么个类,从TaskAssignLog类开始追,追着追着,就又想起了这个问题,那么接着想: TaskAssignLog这个类对流程运行的历史和轨迹的解决是否有些启示?

    这得先从TaskAssignLog这个类的应用说起. 在jBPM(十):webSale的"页面流"介绍 中 第五步的saveAndClose方法中,我们看到可以调用TaskAssignLog类的getTaskNewActorId方法得到流程下一负责人的 ID, 也就是下一节点分配给了谁. 那TaskAssignLog是怎么实现的? TaskAssignLog类本身又有什么功能? TaskAssignLog类的一些方法又是在整个jBPM环境中什么时候调用? TaskAssignLog的"家谱"是什么?

    在Eclipse里F4后, 得到如下所示的"家谱":

 

   

     我们看到TaskAssignLog是ProcessLog的子类. 从ProcessLog的名字上也大概能猜出它的作用: ProcessLog是用来记录--也就log--整个流程(process)执行过程中的相关信息. 不过从整个"家谱"来看, 没找到与流程运行的历史和轨迹相关的类.

    下图中我们看到TaskAssignLog是什么时候创建的, 这里以jBPM(十):webSale的"页面流"介绍 中第三步的startProcessInstance为例.   

    

 

   也就是说在新启动一个流程时,由TaskMgmtInstance调用setActorId时,jBPM会TaskAssignLog方式把新老actorID传过来以TaskAssignLog类实例保存下来.

    也就是说, 在process流动过程中, jBPM会以ProcessLog及其子类来记录执行信息. 按这个逻辑, 是否能加些ProcessLog子类来记录一个流程的运行的历史和轨迹呢?

    只是有这么个粗略的念头,先记下来,现在对jBPM的理解还差的太远,等日后理解加深了,再试着做这方面的扩展.

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值