activiti如何处理异常状态?如果在任何任务中发生错误,流程将如何移回到可以再次执行任务的步骤?
答案 0 :(得分:0)
这个问题有几个答案。 如果任务是java或脚本任务并且正在同步运行,则失败实例的恢复(通常由技术异常引起)来自上一个持久状态(请记住,BPM引擎实际上只是一个状态机)。 / p>
现在,您可以(显然)为特定任务或整个流程实例添加异常处理程序(特别是在引入事件处理程序的5.15中)。这些异常处理程序允许您控制事务回滚(取决于您正在使用的事务管理器)。
最后,您可以将bpmnEvent冒泡到流程模型,并使用BPMN模型中的附加/边界事件处理程序处理异常/补偿。
希望这会有所帮助。 格雷格哈利。