`

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的理解还差的太远,等日后理解加深了,再试着做这方面的扩展.

 

 

  • 大小: 11.3 KB
  • 大小: 6.8 KB
2
1
分享到:
评论

相关推荐

    JBPM数据库表说明 jbpm 工作流 详细到每一个字段,不要下载分

    2 流程运行类数据库表: 10 2.1 JBPM_PROCESSINSTANCE:流程实例表 10 2.2 JBPM_TOKEN:流程TOKEN表 11 2.3 JBPM_LOG:流程日志表 11 2.4 JBPM_RUNTIMEACTION:流程实时ACTION表 14 2.5 JBPM_VARIABLEINSTANCE...

    jbpm jbpm4.3.jar

    jbpm jbpm4.3.jar DDDDDDDD

    jBPM开发:配置EclipseIDE开发环境参考.pdf

    添加 jBPM 设计和运行环境** - **步骤**: - 启动Myeclipse。 - 通过菜单`Windows -> Preferences -> JBoss jBPM`添加jBPM运行环境。 - 指定路径为`jbpm-jpdl-suite-3.2.3`的位置。 #### 二、配置开发环境 **...

    JBPM4.4所需要的包.rar

    标题中的"JBPM4.4所需要的包.rar"表明这是一个与JBPM 4.4版本相关的压缩文件,包含了一些必要的库和组件。JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,用于设计、执行和管理...

    jBPM开发:配置EclipseIDE开发环境.pdf

    - 确保web.xml文件中配置了Servlet,如UploadServlet和ProcessImageServlet,这些Servlet将用于处理jBPM项目中的文件上传和流程图显示等功能。 5. 配置部署描述文件(weblogic.xml) - 根据文件内容,需要配置...

    jbpm4流程提交及执行完整代码

    在“jbpm4流程提交及执行完整代码”这个压缩包中,包含了实现jbpm4流程提交和执行所需的若干关键文件。下面将详细解释这些文件及其背后的流程管理和执行原理。 首先,`Service.java`通常是一个核心服务类,它封装了...

    JBPM流程引擎资料

    在流程的部署与服务方面,文档说明了如何部署业务归档、流程文件和流程资源,以及如何部署Java类。它还介绍了jBPM的几个关键服务,包括ProcessEngine流程引擎、TaskService任务服务、HistoryService历史服务和...

    jBPM-JPDL流程引擎

    JPDL是一种XML格式,用于描述工作流中的任务、事件、决策和流程结构。 2. **流程实例**:当流程定义被激活并开始执行时,就会创建一个流程实例。每个实例都与特定的数据(也称为“元数据”)关联,代表流程中的一个...

    JBPM 流程 监控 的实现

    1. **利用JBPM查询API**:尽管JBPM没有提供现成的监控接口,但其内部提供了丰富的查询API,如`HistoryService`和`RuntimeService`,通过这些API可以获取到运行时和历史的流程实例、任务、事件等信息,从而构建自己的...

    【转载 见附件】纵观jBPM:从jBPM3到jBPM5以及Activiti5

    "【转载 见附件】纵观jBPM:从jBPM3到jBPM5以及Activiti5" 这个标题表明这是一个关于jBPM发展历程的综合分析,涵盖了从jBPM3到jBPM5的变迁,并且提到了Activiti5,这是一款与jBPM相关的流程管理框架。标题暗示了文章...

    jbpm工作流程

    jbpm提供了一个全面的框架,包括工作流程引擎、规则集成、事件处理、任务管理和监控工具,帮助开发者和企业实现流程自动化。 1. **jbpm核心概念**: - **流程定义**:使用BPMN(Business Process Modeling ...

    JBoss JBPM4请假流程示例

    9. **监控和报表**:管理者可能需要监控整个请假流程的运行情况,查看各项统计数据,如审批效率、平均请假时间等。JBoss JBPM4提供了监控工具和报表功能来满足这种需求。 10. **扩展性**:示例中的请假流程只是一个...

    jbpm4.4 简单请假流程

    jbpm4.4是JBoss企业级业务流程管理(Business Process Management)套件的一个版本,它提供了一整套工具和服务,用于设计、部署和执行业务流程。在这个“简单请假流程”中,我们可以深入理解jbpm4.4如何帮助开发者...

    jbpm业务流程

    5. **监控和管理**:jbpm提供了一个Web管理控制台,用于监控流程实例的状态、查看流程图、跟踪历史记录等。这有助于分析流程执行情况,优化流程设计。 6. **集成能力**:jbpm能够与其他系统如CRM、ERP集成,实现跨...

    工作流程JBPM工作流管理

    BPMN(Business Process Modeling Notation)是一种国际公认的过程建模语言,可以清晰地表达各种业务流程,包括任务、决策、事件和流程分支等。 2. **流程执行引擎**:JBPM提供了强大的流程执行引擎,能够解析并...

    JBPM4 开发文档 实例 流程

    总结,JBPM4提供了一套完整的工作流管理系统,包括流程设计、执行、监控和优化等功能,通过JPdl语言和Hibernate整合,实现了流程的可视化和灵活管理。对于开发人员来说,理解这些核心概念和数据库表结构,能更好地...

    jbpm4.3工作流程管理例子

    5. 监控与审计:提供丰富的报表和监控工具,便于分析流程性能、检查流程状态和追踪历史记录。 三、"leave"例子解析 在这个例子中,我们可能看到一个请假流程的实现。这个流程可能包括申请、审批、驳回等环节,涉及...

    JBPM实践之:并发子流程的实现.doc

    JBPM(Java Business Process Management)是一个开源的工作流和业务流程管理系统,它允许开发者设计、执行、管理和监控业务流程。在JBPM中,处理并发子流程是实现复杂业务逻辑的重要一环。本文将深入探讨如何使用...

    JBPM采购申请系统——08_JBPM流程节点.7z

    JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM采购申请系统——08_JBPM流程节点.7z JBPM...

Global site tag (gtag.js) - Google Analytics