我陷入了一点奇怪的境地,我的骆驼路线看起来像这样
from("direct:start")
.doTry()
.to("http://myedpoint.com")
.log(LoggingLevel.DEBUG, "com.mycompany.MyCoolRoute", " ${body}")
.doCatch(Exception.class)
.log(LoggingLevel.DEBUG, "com.mycompany.MyCoolRoute", " ${body}")
.to("bean:foo");
现在在我的成功案例中发生了什么,我的身体被记录了我从端点得到的响应但是在失败的情况下虽然我的端点给了我失败响应正在记录我的请求我已发送到终点可以请任何解释我为什么会这样,我该如何解决?
答案 0 :(得分:1)
查看http
组件的文档,这是预期的行为。如果您查看选项throwExceptionOnFailure
的详细信息,则默认为true
,这意味着不受欢迎的状态代码将导致抛出异常并且响应被抛出。将此选项设置为false
将改变此行为,以便保留响应。 The example code in the documentation shows how this is done.