为什么 Activiti 中的进程在生命周期中丢失 boundaryEvent
Why process in Activiti lose boundaryEvent during lifecycle
我创建了图表,它使用 boundaryEvent 来表示某些操作已完成。
<boundaryEvent id="boundarysignal1" name="cancel" attachedToRef="subprocess3" cancelActivity="true">
<signalEventDefinition signalRef="cancelApplication"></signalEventDefinition>
</boundaryEvent>
一切正常,但在某一时刻(我还没有发现),进程失去了对事件的绑定,所以我根本无法使用与 boundaryEvent 相关的流。发现在运行时 Activiti 将记录创建到 ACT_RU_EVENT_SUBSCR table 中,它保存对 ACT_HI_PROCINST table 中存储流程实例数据的适当记录的事件订阅。同时我看到进程没有关闭并且还活着,相应的 END_FIELD 列为空。
下一个代码没有 return 任何东西,因为事件未绑定:
final List<Execution> executionList =runtimeService.createExecutionQuery().processVariableValueEquals("VAR_NAME","VAR_VALUE").signalEventSubscriptionName(SIGNAL_CANCEL_PROCESS).list();
同时进程处于活动状态,因为下一个结果是成功的:
final List<ProcessInstance> instances = runtimeService.createProcessInstanceQuery().variableValueEquals("VAR_NAME","VAR_VALUE").active().list();
boundaryEvent 与 Process 分离的原因是什么?
环境:SpringBoot 1.3.2;活动 5.19.0.2
ACT_RU_EVENT_SUBSCR table(工作示例):
ACT_HI_PROCINST table(工作示例):
ACT_RU_EVENT_SUBSCR table(不是工作示例,table 为空):
ACT_HI_PROCINST table(不工作的例子):
流程定义图:
子流程 1、2、3:
这里提到了一种可能性:
https://community.alfresco.com/docs/DOC-4591
发行说明 - Activiti - 版本 5.20.0
...
部署新流程定义版本时信号和边界事件订阅丢失
...
这是我们升级到 5.20 的主要原因
我创建了图表,它使用 boundaryEvent 来表示某些操作已完成。
<boundaryEvent id="boundarysignal1" name="cancel" attachedToRef="subprocess3" cancelActivity="true">
<signalEventDefinition signalRef="cancelApplication"></signalEventDefinition>
</boundaryEvent>
一切正常,但在某一时刻(我还没有发现),进程失去了对事件的绑定,所以我根本无法使用与 boundaryEvent 相关的流。发现在运行时 Activiti 将记录创建到 ACT_RU_EVENT_SUBSCR table 中,它保存对 ACT_HI_PROCINST table 中存储流程实例数据的适当记录的事件订阅。同时我看到进程没有关闭并且还活着,相应的 END_FIELD 列为空。
下一个代码没有 return 任何东西,因为事件未绑定:
final List<Execution> executionList =runtimeService.createExecutionQuery().processVariableValueEquals("VAR_NAME","VAR_VALUE").signalEventSubscriptionName(SIGNAL_CANCEL_PROCESS).list();
同时进程处于活动状态,因为下一个结果是成功的:
final List<ProcessInstance> instances = runtimeService.createProcessInstanceQuery().variableValueEquals("VAR_NAME","VAR_VALUE").active().list();
boundaryEvent 与 Process 分离的原因是什么?
环境:SpringBoot 1.3.2;活动 5.19.0.2
ACT_RU_EVENT_SUBSCR table(工作示例):
ACT_HI_PROCINST table(工作示例):
ACT_RU_EVENT_SUBSCR table(不是工作示例,table 为空):
ACT_HI_PROCINST table(不工作的例子):
流程定义图:
子流程 1、2、3:
这里提到了一种可能性:
https://community.alfresco.com/docs/DOC-4591
发行说明 - Activiti - 版本 5.20.0
...
部署新流程定义版本时信号和边界事件订阅丢失
...
这是我们升级到 5.20 的主要原因