仅在超时

时间:2019-05-06 08:20:46

标签: bpmn flowable

我有一个程序,其中使用cron启动多个流程实例。对于每个流程实例,我都有一个最大时间,如果执行时间超过了最大时间,则必须将其视为失败并使用一些特定方法。
现在,我只需要检查流程实例完成后是否经过的时间就超过了给定的最大时间即可。
但是如果我的流程实例由于某种原因而被阻塞(例如服务器没有响应)怎么办?我需要捕获此事件并在进程被阻塞并且超过超时后立即执行失败操作。
我怎样才能满足这两个条件?
我看了FlowableEngineEventType,但没有PROCESS_BLOCKED/SUSPENDED类型的活动。但是,即使发生了,只有经过一定时间后,我才如何触发它?

1 个答案:

答案 0 :(得分:0)

我认为这是与Flowable论坛中的this相同的问题。

如果您正在使用Flowable HTTP Task,请查看文档,以了解如何在其上设置超时以及如何对其中的错误做出反应。如果要从自己的代码触发GET请求,则需要编写自己的业务逻辑,该业务逻辑将引发某种BpmnError,然后在您的流程中进行处理。

Flowable Process实例不具有被阻塞的概念,您必须在建模中手动进行阻塞。