Apache camel:onCompletion mode =“BeforeConsumer”的多次执行

时间:2015-02-19 14:00:23

标签: apache-camel

对不起我的英语,我会尽我所能写这篇文章。

我有一个像这样的xml文件:

<routes>
    <route id="id1">
        <from uri="timer://foo?fixedRate=true&amp;period=60s"/>
        <onCompletion mode="BeforeConsumer">
            <log message="finish"/>
        </onCompletion>
        <setBody>
            <simple>Probando 1</simple>
        </setBody>
       <log message="working1"/>
        <to uri="direct:test1"/>
    </route>
    <route id="id2">
        <from uri="direct:test1"/>
        <setBody>
            <simple>Test2</simple>
        </setBody>
        <log message="working2"/>
        <to uri="direct:test2"/>
    </route>
    <route id="id3">
        <from uri="direct:test2"/>
        <setBody>
            <simple>Test3</simple>
        </setBody>
        <log message="working3"/>
   </route>
</routes>

如果删除模式=&#34; BeforeConsumer&#34;从第一条路线我得到一个&#34;完成&#34;在日志中,但如果我使用xml with mode =&#34; BeforeConsumer&#34;我得到消息3次(每条路线一个)。这是预期的行为吗?

我需要onCompletion代码运行一次,但我也需要mode =&#34; BeforeConsumer&#34;

0 个答案:

没有答案