一號案
<camel:camelContext id="camel">
<camel:route>
<camel:from ref="hotfolderEndpoint"/>
<camel:to uri="file://c:/test/myfolder/toEnd"></camel:to>
</camel:route>
</camel:camelContext>
<camel:endpoint id="hotfolderEndpoint" camelContextId="camel"
uri="file://c:/test/hotfolder?move=backup/${date:now:yyyyMMdd}/${file:name}"/>
結果: org.apache.camel.component.file.GenericFileOperationFailedException:現在\測試\ hotfolder中\備份\:無法創建目錄:C YYYYMMDD \名
II案例DSL
from("file://c:/test/myfolder?preMove=inprogress&moveFailed=backup/${date:now:yyyyMMdd}/${file:name}")
.to("file://c:/test/myfolder/toEnd");
結果 preMove工作正常(創建文件夾INPROGRESS),但此舉引發異常: GenericFileOperationFailedException:GenericFile [C:\測試\ hotfolder中\ xxx.txt]無法文件重命名爲:GenericFile [備份\ 20100512]
III案例
<bean id="hotfolderEndpoint"
class="org.apache.camel.component.file.FileEndpoint"
factory-bean="camel"
factory-method="getEndpoint">
<constructor-arg ref="hotfolder" />
<property name="readLock" value="rename" />
<property name="move" ref="moveExp"/>
</bean>
<bean id="moveExp" class="org.apache.camel.model.language.SimpleExpression">
<property name="expression" value="done/${file:name.noext}-done.${file:ext}"/>
</bean>
Simlar問題,以案例二
四,案例
<camel:camelContext id="camel">
<camel:route>
<camel:from uri="file://c:/test/hotfolder?move=backup/${date:now:yyyyMMdd}/${file:name}"/>
<camel:to uri="file://c:/test/myfolder/toEnd"></camel:to>
</camel:route>
</camel:camelContext>
結果:按預期方式工作
問題:我做錯了什麼或在駱駝有一個錯誤
什麼是'$ {file:name}'應該是? – skaffman 2010-05-11 11:08:52
根據駱駝文件語言文檔,它應該是原始文件的名稱。我注意到,即使我使用純粹的uri文件:/ inbox?move =/done/$ {file:name}我在完成的文件夾中獲得名爲'name'的文件。看起來好像文件語言不起作用。 – sempa 2010-05-11 13:11:55