在 Camunda 重试

Retry in Camunda

我是 Camunda 的新手,我一直在努力了解它处理重试的方式。给定下面的代码,是否可以仅在捕获 error_type_1 时触发重试?

} catch (error_type_1 e) {
        log.error(e);
} catch (error_type_2 e) {
        log.error(e);

这是您的 java 代表的代码吗?在这种情况下,您需要抛出异常来触发事件。

我不确定你想要达到什么目的,但我可以想到两个选择:

1) 重新抛出一个BpmnError,这会导致一个业务异常,你可以在一些错误事件中进行处理。 https://docs.camunda.org/javadoc/camunda-bpm-platform/7.3/org/camunda/bpm/engine/delegate/BpmnError.html

2) 实施自定义事件处理程序 https://docs.camunda.org/manual/7.5/user-guide/process-engine/incidents/#implement-custom-incident-handlers

您可以将重试以及在什么时间后重试添加到您的任务发起者属性

reference