- 1. 执行监听事件写法
- 2. 任务监听事件写法
- 3. 创建流程
- 4. 事件执行类
- 5. 启动流程
1. 执行监听事件写法监听事件分为:执行监听、任务监听。
<flowable:executionListener class="类" expression="表达式" delegateExpression="委托表达式" event="事件">
<flowable:field name="参数名" stringValue="字符串" expression="表达式" />
flowable:executionListener>
2. 任务监听事件写法
<flowable:taskListener class="类" expression="表达式" delegateExpression="委托表达式" event="事件">
<flowable:field name="参数名" stringValue="字符串" expression="表达式" />
flowable:taskListener>
3. 创建流程
目的,创建一个(开始—>审核—>结束)流程,并在审核节点设置一个【任务监听】事件。
xml内容:
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:flowable="http://flowable.org/bpmn"
targetNamespace="http://www.flowable.org/processdef">
<process id="process_audit3" name="审核流程">
<startEvent id="startNode1" name="开始">
<outgoing>Flow_0ksehsmoutgoing>
startEvent>
<endEvent id="Event_08rzeth" name="结束">
<incoming>Flow_18upiqxincoming>
endEvent>
<sequenceFlow id="Flow_0ksehsm" sourceRef="startNode1" targetRef="Activity_0ipmowu" />
<sequenceFlow id="Flow_18upiqx" sourceRef="Activity_0ipmowu" targetRef="Event_08rzeth" />
<userTask id="Activity_0ipmowu" name="审核" flowable:assignee="1">
<extensionElements>
<flowable:taskListener class="org.flowable.audit.TaskEvent" event="complete">
<flowable:field name="message" stringValue="执行完成" />
flowable:taskListener>
extensionElements>
<incoming>Flow_1huwgzmincoming>
<outgoing>Flow_18upiqxoutgoing>
userTask>
process>
definitions>
4. 事件执行类
注意xml文件中的任务执行类,需要在项目中相应位置建立。
任务执行类需要实现TaskListener
package org.flowable.audit;
import org.flowable.engine.impl.el.FixedValue;
import org.flowable.task.service.delegate.DelegateTask;
import org.flowable.task.service.delegate.TaskListener;
import org.springframework.stereotype.Component;
@Component
public class TaskEvent implements TaskListener {
// 名称要与流程定义中的参数名称一致
private FixedValue message;
@Override
public void notify(DelegateTask delegateTask) {
// 获取监听事件中的参数
String val = message.getExpressionText();
System.out.println("获取到的任务执行参数为:" + val);
}
}
5. 启动流程
启动项目后,启动流程
现在流程到达了审核节点
然后根据taskId审批通过此节点
查看控制台
可以看到审批通过时,执行了监听事件。
完事。
下一节写啥呢 ?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)