如何在 Apache Camel 中定义通过 ref 抛出的异常

发布于 2024-11-04 08:42:24 字数 258 浏览 4 评论 0原文

必须在 XML 中定义的骆驼路由中抛出异常。发现 Camel 2.3 中提供了 throwException 语句,如下所示:

 <throwException ref="forced"></throwException>

但是,我不知道如何定义要抛出的强制异常类。由于相同的异常可能会使用不同的异常消息抛出几次 - 最好知道 throwException 是否有其他形式的定义,以便异常类和异常消息就地定义。

Have to throw an exception in my camel route defined in XML. Found throwException statement available from Camel 2.3 which looks like:

 <throwException ref="forced"></throwException>

However, I don't know how to define forced exception class to be thrown. Since same exception could be thrown couple of times with different exception messages - would be good to know if throwException has some other form of definition so exception class and exception message are defined in-place.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

逆光飞翔i 2024-11-11 08:42:24

ref 只是对 a 的引用,所以你可以这样做

<bean id="forced" class="java.lang.IllegalArgumentException">
   <constructor-arg index="0" value="This is forced"/>
</bean>

<camelContext ...>
  ...
</camelContext>

The ref is just a reference to a so you can do

<bean id="forced" class="java.lang.IllegalArgumentException">
   <constructor-arg index="0" value="This is forced"/>
</bean>

<camelContext ...>
  ...
</camelContext>
旧人哭 2024-11-11 08:42:24

从 2.16.0 版本开始,有更优雅的方法来做到这一点,并带有可选的异常消息:

<route>
     <throwException exceptionType="java.lang.IllegalArgumentException" message="illegal argument found"/>
</route>

Since version 2.16.0 there is more elegant way to do it, with optional exception message:

<route>
     <throwException exceptionType="java.lang.IllegalArgumentException" message="illegal argument found"/>
</route>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文