2014-10-30 235 views
0

我正在从一个Linux机器中读取文件,并使用Apache Camel SFTP上传到另一个机箱。对于多达12MB的文件,它工作正常。如果我上传超过12 MB的文件,我可以在desitnation框中看到2个文件。Apache Camel SFTP .filepart

  1. 原始文件(次数1.pdf)
  2. 1.pdf.filepart

如何使用骆驼SFTP航线完成上传后删除desitnation框中第二.filepart文件。

回答

0

您可以对sftp端点使用“include”选项。所有基于文件的端点具有相同(有时相似)的选项,可以在下面的链接中找到。你需要

Camel FileCamel File2

对于你的问题使用包括选项,提到与extention在你的文件名,如下

<from uri="file:Subfolder?include=myfilename.txt"> 

<from uri="file:Subfolder?include=*.txt"> 

现在已经解决了这个问题阅读多个文件。现在你可能(特别是大文件的情况下)发生在读取大文件被完全复制之前的问题。如果发生这种情况,您需要根据您可能面临的问题使用选项“readLock”或其相关选项。请通过上述链接了解更多的想法。

+0

我将从源文件夹中读取所有文件,并在desitnation文件夹中上传相同的文件。功能正常。但是如果源文件大小> 12 MB,则desitnation文件夹有2个文件。 1个原始文件和另一个.filepart。我的问题在于如何避免在使用Camel SFTP时创建.filepart – Gnana 2014-10-31 04:36:01

+0

至于文件完全复制后我知道,那么.filepart文件将被删除。您是否在使用源端点中的readLock? 。 – 2014-10-31 10:16:26

+0

我还假设sftp库在完全完成时会删除.filepart。 .filepart不是我们在Apache Camel源代码中做的事情。 – 2014-11-01 07:47:48