Camel - 为什么文件使用者移动选项与pollEnrich的工作方式不同?

时间:2016-12-07 13:30:17

标签: apache-camel

当我使用文件消费者时

<from uri="file:in?move=$simple{file:name}-transfered&amp;include=^demo_keys\.ks$&amp;sortBy=file:name" />

文件在处理后被重命名为xxx-transfered(正如我预期的那样并在文档中说明)。

但是当我使用pollEnrich(仅用于一个文件)

<pollEnrich>
<simple>file://in?fileName=demo_keys.ks2&amp;move=${camelId}-uploaded&amp;sendEmptyMessageWhenIdle=true&amp;maxMessagesPerPoll=1&amp;delay=8000</simple>
</pollEnrich>

处理后文件未重命名,而是移入新创建的具有原始名称的子目录。

如何重命名pollEnrich处理的文件,实现与普通文件相同的行为?

我已经用v2.17.2和v2.18.0对它进行了测试 谢谢!

1 个答案:

答案 0 :(得分:0)

我认为这可能是骆驼的一个错误;尝试使用文件语言表达式(例如${file:name})而不是${camelId}只是为了确定,但the official documentation在这种情况下非常清楚 - 它应该将值解释为文件名而不是。目录

我想你应该报告Camel的JIRA中的错误。