camel body设置了请求而不是响应

时间:2017-02-15 19:55:53

标签: java logging apache-camel

我陷入了一点奇怪的境地,我的骆驼路线看起来像这样

 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");

现在在我的成功案例中发生了什么,我的身体被记录了我从端点得到的响应但是在失败的情况下虽然我的端点给了我失败响应正在记录我的请求我已发送到终点可以请任何解释我为什么会这样,我该如何解决?

1 个答案:

答案 0 :(得分:1)

查看http组件的文档,这是预期的行为。如果您查看选项throwExceptionOnFailure的详细信息,则默认为true,这意味着不受欢迎的状态代码将导致抛出异常并且响应被抛出。将此选项设置为false将改变此行为,以便保留响应。 The example code in the documentation shows how this is done.

相关问题