错误事件
1 开始事件
错误启动事件(error start event),可用于触发事件子流程(Event Sub-Process)。错误启动事件不能用于启动流程实例。
错误启动事件总是中断。我们通过案例来介绍。
绘制事件子流程要注意:
选择错误启动事件
然后配置流程节点信息
然后在JavaDelegate中抛出对应的异常
代码语言:javascript复制public class FirstJavaDelegate implements JavaDelegate {
@Override
public void execute(DelegateExecution execution) throws Exception {
System.out.println("FirstJavaDelegate:执行了" LocalDateTime.now().toString());
// 抛出的信息必须对应于error的Code信息
throw new BpmnError("errorCode01");
}
}
然后正常部署,启动流程。然后我们就可以看到对应的流转了
2 边界事件
当子流程执行中对外抛出了相关的异常,那么我们设置的错误边界事件就能对应的捕获到相关的事件,然后做对应的处理,相关案例如下:
绘制错误边界流程图的时候需要先绘制中间事件的图标,然后拖拽到子流程的边界,然后修改对应的类型即可,错误边界事件绑定抛出对应的errorCode
然后对应的抛出的信息
代码语言:javascript复制public class SecondJavaDelegate implements JavaDelegate {
@Override
public void execute(DelegateExecution execution) throws Exception {
System.out.println("SecondJavaDelegate:执行了" LocalDateTime.now().toString());
// 抛出的信息必须对应于error的Code信息
throw new BpmnError("errorCode02");
}
}
然后部署启动流程即可看到对应的效果