使用循环EIP解决Apache Camel中的Usecase

时间:2015-06-04 14:43:44

标签: apache apache-camel

我有一个用例,其中我有一个路由,它将m个休息URLS'作为输入,然后每次点击这些URL的n次,直到响应代码为204.

所以点击一个URL,直到204是响应代码,如果它返回204,则转到下一个URL并应用相同的过程。

我尝试使用循环EIP,但它没有用。请建议。

1 个答案:

答案 0 :(得分:0)

如果我理解你的要求,这样的事情就可以解决问题:

<from uri="bean:cxf...." />

<setExchangePattern pattern="InOut"/>
<to uri="jetty...." /> //hit the url

<choice>
  <when>
    <simple>CHECK_IF_HTTP_RESPONSE_CODE_HEADER_IS_204</simple>
    <to uri="mock:result" />
  </when>
  <otherwise>
    <to uri="bean:cxf...." /> //send the exchange to this very route again
  </otherwise>
</choice>