[英]How to pass file name from 'from' to 'to' in camel?
我正在嘗試弄清楚如何處理文件,然后將文件復制到 /finished 目錄。 如果我只是將“to”保留為目錄,它會為我生成文件名。 我想要相同的文件名。
在我的處理器中,我有:
GenericFile gfile = exchange.getIn().getBody(GenericFile.class);
exchange.getOut().setBody(gfile);
在我的路線中,例如:
<route id="fileLoader" autoStartup="true">
<from uri="file://{{xls.dir}}?noop=true&antInclude=*xlsx&delay=1000" />
<to uri="bean:loaderProcessor" />
<to uri="file://{{xls.dir}}finished/?fileName=${in.header.CamelFileName}" />
</route>
關於使用 '{file:name}' 和 '{in.header.CamelFileName}' 有各種各樣的建議,但沒有一個對我有用。
(順便說一句,xls.dir 最后有一個 /,所以這不是問題)
${headers.CamelFileName}將為您提供選擇進行處理的文件名。 除此之外,我們還有許多其他可用的 header 屬性。 您可以按照 Camel 官方文檔了解其他 header 屬性。
文檔參考下面URL: https://camel.apache.org/components/3.15.x/file-component.html#_message_headers
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.