知识传送门 》》》》》》》》


你只有一定要,才一定会得到。

一:任务监听器TaskListener

任务监听器是处理业务逻辑的重要的地方,当任务创建设定负责人完成任务时都可以监听的到从而来处理自己的业务。

常用于监听Assignment事件,设置完负责人给负责人发一个消息来通知提示。注意:任务监听器只能用在UserTask上使用。

监听的事件类型:

  • Create:任务创建后触发。常用于任务创建后设置任务负责人等。
  • Assignment:任务分配后触发。常用于设置完负责人后向负责人发邮件、短信等通知一下。
  • Delete:任务完成后触发。
  • All:所有事件发生都触发。


注意:直接点击Task Listeners 前面的三角是展示不了内容的,要先点击Task Listeners右边的空白处再点击三角才会展开,Listener也是如此。

public class OffWorkTaskListener implements TaskListener {@Overridepublic void notify(DelegateTask delegateTask) {System.out.println(delegateTask.getName());// create,assignment,delete,allSystem.out.println(delegateTask.getEventName());// delegateTask.setAssignee("xxx");}
}

二:流程监听器ExecutionListener

任务监听器只能监听UserTask,流程监听器用在流程的不同的阶段上:

  • 开始事件和结束事件的开始和结束
  • 经过输出顺序流
  • 流程活动的开始和结束
  • 流程网关的开始和结束
  • 中间事假的开始和结束
import org.activiti.engine.delegate.ExecutionListener;public class MyExecutionListener implements ExecutionListener {@Overridepublic void notify(DelegateExecution execution) {// Id=_2System.out.println("Id=" + execution.getCurrentFlowElement().getId());// Name=StartEventSystem.out.println("Name=" + execution.getCurrentFlowElement().getName());// EventName=startSystem.out.println("EventName=" + execution.getEventName());// ProcessDefinitionId=helloworld:1:3System.out.println("ProcessDefinitionId=" + execution.getProcessDefinitionId());// ProcessInstanceId=2501System.out.println("ProcessInstanceId=" + execution.getProcessInstanceId());}
}

知识传送门 》》》》》》》》


Activiti7工作流引擎:基础篇(六) 任务监听器和流程监听器相关推荐

  1. 学习笔记之-Activiti7工作流引擎,概述,环境搭建,类关系图,使用Activiti BPMN visualizer,流程变量,组任务 网关,Activiti整合Spring SpringBoot

    本篇学习笔记是观看黑马程序员Activiti7视频而得 Activiti7 一.工作流介绍 1.1 概念 工作流(Workflow),就是通过计算机对业务流程自动化执行管理.它主要解决的是" ...

  2. Activiti7 工作流引擎入门

    Activiti7 工作流引擎入门 做课目的 一.适用人群: 普通人 不是每个人都能进入一线互联网大厂 BATJ 普通人,省城,软件公司,银行.政府做 二.适用项目:OA CRM ERP 系统 出差报 ...

  3. Activiti工作流引擎基础入门【收藏可做笔记系列】

    Activiti基础-Activiti7 一.工作流介绍 1.1 概念 1.2 工作流系统 1.3 适用行业 1.4 具体应用 1.5 实现方式 二.Activiti7概述 2.1 介绍 2.1.1 ...

  4. Nginx实战基础篇六 通过源码包编译安装部署LNMP搭建Discuz论坛

    Nginx实战基础篇六 通过源码包编译安装部署LNMP搭建Discuz论坛 版权声明: 本文遵循"署名非商业性使用相同方式共享 2.5 中国大陆"协议 您可以自由复制.发行.展览. ...

  5. Activiti7工作流引擎-环境搭建及创建数据库

    第1章 什么是工作流 1.1工作流介绍 工作流(Workflow),就是通过计算机对业务流程自动化执行管理.它主要解决的是"使在多个参与者 之间按照某种预定义的规则自动进行传递文档.信息或任 ...

  6. Vue基础篇六:Vue使用JSX进行动态渲染

    系列文章目录 Vue基础篇一:编写第一个Vue程序 Vue基础篇二:Vue组件的核心概念 Vue基础篇三:Vue的计算属性与侦听器 Vue基础篇四:Vue的生命周期(秒杀案例实战) Vue基础篇五:V ...

  7. Activiti7工作流引擎:基础篇(一) 简介与IDEA插件安装

    你不要一直不满他人,你应该一直检讨自己才对. 零:审批场景 对于请假流程我们有以下两种做法: 传统方式:写一个请假条,拿着请假条跑到项目经理那里签字,然后再拿着请假条去部门经理那里签字,然后再拿着请假 ...

  8. Activiti7工作流引擎

    什么是Activiti7 Activiti 下载地址: http://activiti.org/download.html        Activiti 是一个工作流引擎, activiti 可以将 ...

  9. Chrome内核解析 -- 绘制引擎基础篇:Command Buffer

    转载请注明出处:http://write.blog.csdn.net/postedit/41743463 本文讲解Chromium里集中处理GL操作的重要模块:command buffer. Grap ...

最新文章

  1. webstorm代码行数统计_10万行代码10万年薪,利用python查看自己写了多少代码
  2. OpenMp使用例子
  3. php的pathinfo,php中PathInfo的用法举例(图文)
  4. 【CentOS Linux 7】实验2【Shell编程及应用】
  5. 首批绿证核发 2018年或适时启动强制约束交易
  6. (17)FPGA面试技能提升篇(System Verilog)
  7. 【缓存】缓存,这么用才真正达到缓存的效果
  8. PHPExcel如何把该列的值设置为文本无科学计数?
  9. html选择区间,jQuery可选择区间值代码
  10. 分享:在微信公众平台做HTML5游戏经验谈
  11. 需要缺少的Web组件才能加载,以及项目加载后显示“不可用”的解决方法
  12. Basin hopping是什么全局优化算法?
  13. allegro画两层板板步骤
  14. 【洛谷4920】[WC2015] 未来程序(提答题)
  15. excel快速批量制作工资条
  16. 涂抹果酱_2015年全球游戏果酱
  17. 最新彩虹易支付二次开发的系统源码+PHP内核
  18. 法语翻译器在线翻译器
  19. H3C V7 防火墙多WAN 链路负载均衡配置方法(命令行)
  20. python 因果推断_causalinference: 使用Python做因果推断

热门文章

  1. 人群密度向:CMTL
  2. gym安装box2d遇到的问题
  3. magic4升级鸿蒙系统日期,magic4.0什么时候更新
  4. 量子逻辑门之受控Y门(C-Y)
  5. java int除以int_转:int整数除以int整数一定得到的是int整数(易忽视)
  6. 多渠道推广场景下,如何实现 App 用户增长的精准归因?
  7. 赛效:WPS文档所选内容被锁定无法更改怎么解决
  8. AliOS Things物联网学习: 温湿度监测(HaaS EDU K1)
  9. 日本生活随感之 - Dell的亚洲攻略
  10. Rx Java 异步编程框架