
聚集块中的错误处理
要在聚集块中处理错误情况,可以使用“停止”或“失败”调解原语。另外,也可以连接到“扇入”调解原语的“停止”输入终端。
- “停止”调解原语用于停止当前执行分支,聚集将转到另一个分支或迭代。
- “失败”调解原语用于终止整个调解流,并且将向调解调用者返回 ServiceRuntimeException。通常,除非您想立即终止整个流的处理,否则不应在聚集中使用“失败”调解原语。
- “扇入”调解原语提供了“停止”输入终端,您可以通过连接此终端指示聚集应终止。当消息到达“停止”终端时,将触发未完成输出终端。然后,可以连接其他调解原语(必要时,这可以包括“失败”调解原语)以处理此情况。
“扇入”调解原语具有一个用于指定超时值的属性。超时时间段在相关联“扇出”调解原语第一次触发输出终端时开始。如果某消息在此超时时间段过后到达“扇入”调解原语的 in 终端,那么它将被视为延误,并且将触发未完成终端。超时属性的缺省值是 -1,这表示无超时,并且不会将任何消息视为延误。