Camel明确处理了两种错误处理的范围:
- 全局
- 每个路由
我遇到的问题是在“子路由”中抛出异常。例如,我有这个路由:
from("direct:sendToWebservice").
.processRef("massageBeforeSending").
.to("http://webservice.com").
.processRef("massageResponse");
那么我还有另外两个需要向web服务发送消息的路由:
from(direct:fromSystemA").
.errorHandler(deadLetterChannel("direct:TellSystemA")).
.to("direct:sendToWebservice");
from(direct:fromSystemB").
.errorHandler(deadLetterChannel("direct:TellSystemB")).
.to("direct:sendToWebservice");
我希望发生的情况是,如果Web服务路由引发异常,它将向调用方传播,并通知A系统或B系统。我不知道如何实现这一点。
我觉得这应该是一个常见的用例-有没有人遇到过类似的问题?
再次感谢您的时间,
Roy