Page tree

有两种方法来处理规则集中的异常:

  1. 生成异常事件 — 创建的规则直接连接到操作所生成的异常事件。

这种方法的优点是,可以获得导致操作的完整规则执行链,因此作为异常处理的一部分,可以报告关于问题的更多信息。
缺点是,如果可能抛出异常的规则集中有多个操作,它可能导致很多重复的规则。

  1. 根异常事件 — 向规则集中添加一个根异常事件,然后将规则连接到该事件。

这种方法的优点是,无论异常发生在规则链中的何处,它都将被捕获并报告。
缺点是导致异常的上下文信息不再可用。 所有可供报告的信息只有发生异常的规则名称,以及与异常相关的消息。
混合的方法通常是最佳策略。 实施需要详细上下文信息的生成事件异常处理程序,但为所有其他例外提供一个根事件异常处理程序。
在印能捷 6 之前,如果实施了两种异常处理程序,两者都将执行。 将执行生成事件异常处理程序规则链,然后将执行根事件异常处理程序规则链。 这有时会导致重复的错误报告。 从印能捷 6 开始,异常处理行为发生了变化。 现在只有操作未实施生成事件异常处理程序时,才会执行根事件异常处理程序。 为了让您可以重复旧的行为,添加了一个抛出操作,让您可以将异常从生成事件异常处理程序传播到根异常事件处理程序。
注: 由于错误 PRINERGY-34294,抛出操作从印能捷 6.1.1 起工作不正常。 尝试将其置于规则集中将导致规则生成器崩溃。

  • No labels