在他的上下文生命周期中使用Apache Camel仅读取1个文件

时间:2019-05-21 10:58:29

标签: file apache-camel

在骆驼上下文生命周期中仅读取1个文件(每个骆驼上下文1个文件) 文件属性的maxMessagesPerPoll设为1时不起作用

我已经在Route Builder的configure方法中尝试过maxMessagesPerPoll = 1,但是它不起作用。

我也尝试过使用apache骆驼主类的setDurationMaxMessages(1)方法((文档说,它设置了应用程序在终止之前将处理的最大消息数的持续时间)),但是这种方法存在问题,上下文并没有停止。即使我尝试使用setDurationIdle(1),但这也没有停止上下文(它在其他情况下也起作用),因此无法执行操作。

CamelContext ctx = new DefaultCamelContext();

Main camel = new Main();

camel.addRouteBuilder(new MyRouteBuilder());

camel.setDurationMaxMessages(1);

camel.setDurationIdle(1);

camel.run();

预期结果是使用apache骆驼处理唯一的文件。

实际结果是正在处理该文件夹中的所有文件。

1 个答案:

答案 0 :(得分:0)

好的,Apache Camel中可能存在一个小错误,我正在检查并记录了故障单:https://issues.apache.org/jira/browse/CAMEL-13556