可以使用 “引发异常 ”形状在业务流程中显式引发异常。 当抛出异常时,运行时引擎将搜索最近的可以处理该类型异常的异常处理程序。
首先,搜索当前编排以查找包含范围,并考虑与该范围关联的异常处理程序,以便定位已引发异常类型的适当处理程序。
如果未找到适当的异常处理程序,则会搜索调用当前业务流程的业务流程,以查找包含对当前业务流程的调用点的范围。 此搜索将一直持续到找到可以处理当前异常的异常处理程序。
对于异常的完全匹配,是指该异常类与被抛出的异常的运行时类型相同或为其基类的异常类。
找到匹配的异常处理程序后,控件将传输到异常处理程序的第一个语句。
如果搜索匹配的异常处理程序失败,业务流程将停止。 交易可以帮助您最大程度地减少此类事件的影响。
程序
配置“抛出异常”形状
在“属性”窗口中,从 异常对象 下拉列表中选择要抛出的可用对象类型。
注释
仅当 “引发异常” 形状位于异常处理程序中,并且您希望重新引发在当前异常处理程序中捕获的异常时,才选择 “引发异常” 形状中的常规异常。 如果在任何其他上下文中对引发异常形状使用一般异常,则在编译期间会收到错误。