2017-05-31 141 views
0

我也許有一個愚蠢的問題,但我怎麼能從FTP服務器下載文件。 我使用路由駱駝下載文件

。從( 「FTP:/測試@本地:21 /密碼=測試」)。要( 「文件:/ d:\\測試」)

我有錯誤:無法存儲空身體。爲什麼?我讀了幾個例子我的錯誤在哪裏?由於

編輯

我用的路線:

。從( 「直接:XX」) 。從(」 ftp://[email protected]:21/?password=test 「)。爲了 (」 文件:// d :\收件箱「);

和我有錯誤:

org.apache.camel.component.file.GenericFileOperationFailedException:無法寫入空體文件:d:\收件箱\ XXXXXXX 在org.apache.camel.component .file.FileOperations.storeFile(FileOperations.java:237) at org.apache.camel.component.file.GenericFileProducer.writeFile(GenericFileProducer.java:277) at org.apache.camel.component.file.GenericFileProducer.processExchange (GenericFileProducer.java:165) at org.apache.camel.component.file.GenericFileProducer.process(GenericFileProducer.java:79)

回答

1

這應該起作用。

.from("ftp://[email protected]:21/?password=test").to("file://d:\\test") 

我很確定從部分。但到了,你可能需要改變一點點(WRT '/'),因爲我還沒有在Windows工作

+0

我有同樣的問題 – atoua

+0

首先,你正在使用ftp服務器上的'/'路徑。確保這是正確的。 – pvpkiran

+0

是的這是正確的。我有3個文件。 我用'producer.sendBodyAndHeader(「direct:xx」,null,「a」,10)調用我的路由;' – atoua

0

添加參數 'allowNullBody = true' 可你TO文件端點

到( 「文件:// d:\測試allowNullBody =真」)


如果你深入到源代碼狀態org.apache.camel.component.file.FileOperations.storeFile(FileOperations.java:237),你會看到相關GenericFileOperationFailedException發生在

  1. 身體交流是空
  2. allowNullBody設置爲false

默認情況下,在allowNullBody生產的文件中Camel File Component '假' 的狀態。您需要將其更改爲'true'以允許存儲空文件。