我正在尝试使用属性值动态传递到 URI值。该属性值将已在 cfg 文件中配置。
当使用 CamelFileNameOnly 标头提取文件名时,它必须传递到 to Uri 端点。以便在代码中引用相同的名称。
请在下面找到我的代码:
我在我的服务器位置删除了一个名为 KevinFile.txt 的文件 = D:\Servers\jboss-fuse-6.2.0.redhat-133\data\myLocalFTP (file://data/myLocalFTP)
配置文件
local.folder.url=file://data/myLocalFTP
KevinFile=file://data/KevinFileDirectory
骆驼路线
<route id="awsRoute">
<from uri="{{local.folder.url}}"/>
<bean ref="processorClass" method="process"/>
<log message="myProperty value is ${exchangeProperty.myProperty}"/> <---Gives the fileName
<to uri="{{${exchangeProperty.myProperty}}}"/> <--This is the spot i am getting error :(
</route>
处理器类.java
public class ProcessorClass implements Processor{
@Override
public void process(Exchange exchange) throws Exception {
String fileName = (String) exchange.getIn().getHeader("CamelFileNameOnly");
exchange.setProperty("myPropertyNew", fileName);
}
}