【发布时间】:2019-10-31 14:00:09
【问题描述】:
我有一个用 XML 定义的骆驼路由,它以 AB1234-20141113.txt 格式提取文件并将它们移动到 ftp 服务器。我需要重命名路由中的文件,去掉 - 和 .txt 之间的日期部分,以便 ftp 服务器上的文件为 AB1234.txt。
从下面的示例路由定义中可以看出,我在成功或失败后在本地计算机上移动文件时使用了 from uri 中的文件表达式语言来添加文件名,但我看不到任何简单的方法在 ftp uri 中应用正则表达式或子字符串转换。
<route id="outboundoFtpPoller">
<from uri="file:/generatedFiles?move=done/${date:now:yyyyMMdd}/${file:name}&moveFailed=failed/${file:name.noext}-${date:now:yyyyMMddHHmmssSSS}.${file:ext}"/>
<to uri="ftp:{{ftp.server}}{{ftp.subdirectory}}/outbox/<what goes here?>" />
</route>
欢迎任何关于我可以在该部分中提出什么以实现我正在尝试做的事情的建议,或者任何关于我如何以稍微不同的方式实现它的建议,但它必须使用骆驼并且路线定义必须保留在 XML 中。
【问题讨论】:
标签: regex apache-camel