我有以下问题: 我想使用ftp组件读取然后写入文件以及相对于ftp用户主目录的路径。为此,我在春天使用recursive = true,它工作正常。问题是我还需要使用tempFileName但是在目标位置*创建为$ {file:onlyname.noext} .tmp的文件不能存储在目标目录中,而是存储在家庭目录中,即 当来源是:
A
|-> B
|-> C
|->file.txt
目标应该是:
A
|->file.tmp (temporary)
|-> C
|->file.txt (file.tmp cannot be stored here!)
但是,tempFileName似乎只相对于完整路径工作。这可以改变吗?
答案 0 :(得分:0)
今天你不能这样做,但我们有一个改进,所以你可以在Camel 2.18.2以后做到这一点。然后,您可以使用../${file:onlyname.noext}.tmp
作为临时文件名。
答案 1 :(得分:0)
由于.tmp后缀不是必需的,我建议查看tempPrefix-option。
<to uri="file:///C?tempPrefix="../" />
这将导致您的文件存储在名为file.txt的目录A中,直到整个文件完全写入,然后它将被移动到目录C的最终目标。