flowable节点
时间: 2023-08-04 09:02:26 浏览: 81
Flowable是一个开源的工作流引擎,它支持动态添加节点。当流程运行中需要临时新增一个节点,并且该节点只对当前流程实例生效时,可以使用Flowable提供的DynamicBpmnService来实现。DynamicBpmnService是Flowable中的一个API,它包含了新增临时节点的接口。通过调用DynamicBpmnService的方法,可以修改BpmnModel并新增绘制节点的坐标,然后将修改后的BpmnModel重新部署,并更新当前流程实例的proc_def_id。这样就实现了动态添加节点的功能。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [flowable 流程实例新增临时节点](https://blog.csdn.net/zhuzhoulin/article/details/105516564)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
相关问题
flowable节点审核监听器实现
在Flowable中,可以通过实现`TaskListener`接口来实现节点审核监听器。具体实现步骤如下:
1. 编写`TaskListener`的实现类,实现`notify`方法。例如:
```java
public class ApprovalTaskListener implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
String eventName = delegateTask.getEventName();
if ("create".equals(eventName)) {
// 节点创建
System.out.println("节点创建:" + delegateTask.getName());
} else if ("assignment".equals(eventName)) {
// 节点指派
System.out.println("节点指派:" + delegateTask.getName());
} else if ("complete".equals(eventName)) {
// 节点完成
System.out.println("节点完成:" + delegateTask.getName());
}
}
}
```
2. 在流程定义文件(BPMN20.xml)中,为需要监听的节点添加`extensionElement`,并指定`TaskListener`的实现类。例如:
```xml
<userTask id="reviewTask" name="Review Task">
<extensionElements>
<activiti:taskListener event="create" class="com.example.ApprovalTaskListener" />
<activiti:taskListener event="assignment" class="com.example.ApprovalTaskListener" />
<activiti:taskListener event="complete" class="com.example.ApprovalTaskListener" />
</extensionElements>
</userTask>
```
以上就是使用Flowable实现节点审核监听器的简单示例。
flowable 摆渡节点
Flowable框架中的摆渡节点(Gateway)是用于根据条件决定流程流向的节点。摆渡节点可以有多个出口,每个出口都关联着一个条件表达式。在流程执行时,根据条件表达式的结果,选择满足条件的出口来确定流程的下一步走向。
摆渡节点在Flowable中有两种类型:排他型摆渡节点(Exclusive Gateway)和并行型摆渡节点(Parallel Gateway)。
排他型摆渡节点是基于条件的分支结构,只有满足某个条件时,才会将流程流向与条件匹配的出口。在流程执行时,排他型摆渡节点只选择一个出口进行流转。
并行型摆渡节点用于实现并行流程分支,不会对条件进行判断,所有的出口都会被执行。并行型摆渡节点可以将流程分成多个并行执行的分支,分支之间是独立的,可以并行或串行地执行。
在Flowable中使用摆渡节点可以灵活地控制流程的走向,根据不同的条件选择不同的分支路径,实现复杂的业务逻辑。