gpt4 book ai didi

java - Apache Camel,添加的路由不会抛出 OnException

转载 作者:行者123 更新时间:2023-12-01 10:02:12 26 4
gpt4 key购买 nike

我正在写来自 Camel 和 Spring 的世界!

我正在使用此 recipe 以编程方式添加路由.

基本上,您获取 Camel 上下文并使用文件添加路线。

这就是问题:
在运行时添加的路由不会触发任何 OnException,在 Spring 读取的上下文文件上设置。

回顾一下:

  1. 我有一个 spring 上下文文件,如下所示:
<camel:camelContext>
<onException id="exceptions">
<handled>
<constant>true</constant>
</handled>
<process ref="logExceptionProcessor"/>
<to uri="activemq:adapterLOG"/>
<process ref="mailSender"/>
</onException>
...
  • 添加获取 Camel 上下文的路由后,添加的路由不会抛出 OnException 集。
  • 您对这种行为有什么建议吗?

    最佳答案

    您可以使用两种不同的错误处理程序范围。第一个是路由级别错误处理程序,它将仅管理该路由的错误处理,第二个是该上下文中所有内容的全局错误处理。如果您想了解更多详细信息,请参阅文档中的“范围”部分。

    http://camel.apache.org/error-handler.html

    对于加载路由时的用例,您将无法利用全局错误处理程序,因为路由定义是与上下文分开创建的,然后在运行时添加到其中。这意味着您需要为单独加载的每个路由定义错误处理。注意:这并不意味着您不能创建自己的通用错误处理策略并让每个路由引用该策略。

    关于java - Apache Camel,添加的路由不会抛出 OnException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36711161/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com