2015-11-26 89 views
0

當我的FTP mput傳輸成功完成時,我想重命名本地目錄中的文件。爲此,我需要使用PropertyPlaceholderConfigurer中的本地目錄路徑。但這似乎並沒有奏效。請你可以建議合成文本擴大該物業的價值? $ {local.request.dir}表示像/ home/jainr/REQUEST這樣的目錄路徑。以Spring表達式語言使用屬性佔位符

<int-ftp:request-handler-advice-chain> 
<bean id="requestFileRename" class="org.springframework.integration.handler.advice.ExpressionEvaluatingRequestHandlerAdvice"> 
    <property name="trapException" value="true" /> 
    <property name="onSuccessExpression" value="T(org.apache.commons.io.FileUtils).moveFile(new java.io.File(#{${local.request.dir}} + '/' + headers['RequestFileName']), new java.io.File(#{${local.request.dir}} + '/' + headers['RequestFileName'] + '.processed'))" /> 
</bean> 
</int-ftp:request-handler-advice-chain> 
+0

[Spring 3表達式語言如何與屬性佔位符交互?](http://stackoverflow.com/questions/2041558/how-does-spring-3-expression-language-interact-with-property-佔位符) – benbenw

+0

該問題只涉及初始化時間SpEL;這是運行時SpEL。 –

回答

1

您需要定義解決佔位符爲文字,從規劃環境地政司的角度...

new java.io.File('${local.request.dir}/' + headers... 

注意我還刪除了#{...} - 即初始化時間規劃環境地政司 - 這是運行規劃環境地政司。

在未來,而不是陳述喜歡...

但這似乎並不奏效。

...提供錯誤消息和/或堆棧跟蹤。