我有一条骆驼路线:
from("file:///u01/www/images/nonprofits-test?move=.done&preMove=.processing&filter=#nonpFileFilter&minDepth=2&recursive=true")
稍后在路线中我需要访问原始文件名。我如何获得这些信息?所有标头都包含类似${file:name}
的信息,但不包含实际文件名。
提前致谢!
基本问题是在使用grails运行Camel时,没有正确评估简单语言。这将在Camel用户列表中进一步讨论。
答案 0 :(得分:6)
有一个名为“CamelFileName”的标题存储了这个
有关详细信息,请参阅camel-file2标题部分...
答案 1 :(得分:0)
如果您的简单语言不起作用,那将是因为您没有使用<simple
&gt;标签试试如下。
<route id="movedFailedFileForRetry">
<from uri="file:///opt/failed?delete=true" />
<log loggingLevel="INFO" message="Moving failed file ${header.CamelFileName} for retry" />
<choice>
<when>
<simple>${headers.CamelFileName} == 'file1.txt'</simple>
<to uri="file:///opt/input1" />
</when>
<otherwise>
<to uri="file:///opt/input2" />
</otherwise>
</choice>
</route>
希望它有所帮助!!