activiti5之监听器

activiti5之监听器

业务场景

在使用工作流时,通常伴随着很多具体的需求,例如:

  1. activiti人员动态的分配。
  2. 当前任务节点完成的时候,指定需要指定下一个节点的处理人(比如,一个请假流程,a员工请假,需要指定下一步需要处理请假流程的领导。)。
  3. 任务节点完成的时候,需要一些复杂业务,(比如当前节点完成的时候,需要调用我们的jms消息系统发送消息)。
  4. 任务流转到当前的节点的时候,需要监控当前任务节点的一些信息或者其他的业务信息。
  5. 当前的任务节点分配处理人的时候,需要触发自定义的一些业务。
  6. 流程开始结束的时候,需要处理业务信息。
  7. 经过任务节点的出线,也就是连线的时候,需要触发自定义的业务。

那我们怎么实现以上的这些需求呢?这个时候,我们就需要使用activiti监听器,activiti提供的监听器怎么实现,以及如何触发,这些都需要我们一步步了解。下面就详细的介绍activiti监听器。

从 activiti监听器的使用范围来看,大致分为三种:

  1. 全局的监听器 ExecutionListener。
  2. 连线的监听器。
  3. 节点的监听器 TaskListener。
    下面我们一个个的来看如何使用这些监听器。

全局监听器

  • 全局监听器主要使用的场景就是监控这个流程的启动和结束,
    ExecutionListener定义如下:流程实例start、end、take的时候调用,其中take是监控连线的时候使用的。
public interface ExecutionListener extends Serializable {
   
  String EVENTNAME_START = "start";
  String EVENTNAME_END = "end";
  String EVENTNAME_TAKE = "take";
  void notify(DelegateExecution execution) throws Exception;
}
  • 使用方法,第一步,在模型中添加监听器,部署后,xml如下:
    第二步,编写监听类
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="daling">
  <process id="daling" name="name_daling" isExecutable="true" activiti:candidateStarterUsers="a,b,c,d">
    <extensionElements>
      <activiti:executionListener event="start" class="com.daling.ch1.listener.MyExecutionListener"></activiti:executionListener>
      <activiti:executionListener event="end" 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值