我正在使用Apache Camel从FTP服务器读取文件。它必须在没有重新启动几天的情况下监听新文件。有些日子有文件要下载,有些日子没有。
我遇到的第一个问题是,当我在长时间不活动(例如一天)之后将文件放入FTP文件夹时,Apache Camel没有选择文件,我不得不重新启动它以使其工作。
所以我认为disconnect
标志可能对这种情况有用。但是,当我使用disconnect标志时,我收到以下错误:
org.apache.camel.component.file.GenericFileOperationFailedException: File operation failed: null Connection is not open. Code: 221
文件已下载并保留在preMove
文件夹中,但它们不会移动到move
中指定的最终存档文件夹。所以我的猜测是在读取文件并将其移动到preMove文件夹后关闭连接,但是当它尝试移动到存档文件夹时它会失败。但是我尝试删除preMove
选项但它仍然失败,这使我认为move
标志是造成问题的原因。
有没有办法解决这个问题?