【问题标题】:Apache Camel File Append Not Working in WindowsApache Camel 文件附加在 Windows 中不起作用
【发布时间】:2021-01-04 00:45:17
【问题描述】:

我有一个简单的路线,我将一些字符串写入输出文件,然后尝试附加原始文件的内容。但它会忽略并覆盖文件。

from("file://inputFolder")
    .routeId("InputFolderToTestSedaRoute")
    .setProperty("myFileConsumedBody", simple("${body}"))
    .setBody(constant("FIRST LINE!"))
    .to("file://{{outputFolder}}")
    .setBody(simple("${exchangeProperty.myFileConsumedBody}"))
    .log("*** STEP 100: ${headers} :***")
    .delay(10000)
    .to("file://outputFolder?fileExist=Append")
    ;

我添加了延迟来观察会发生什么。

  1. 如果有一个名为 myFile.txt 的输入文件,Camel 会按预期选择该文件。
  2. 与代码中一样,它将文件保存到客户交换属性中。
  3. 它打开一个名为 myFile.txt 的文件并写入内容“FIRST LINE!”并等待延迟到期。
  4. 我可以打开并验证内容,一切正常。
  5. 一旦延迟到期,Camel 会使用从输入文件夹中选取的原始内容覆盖文件 myFile.txt(即使我已要求 Camel 追加)。

我在这里做错了吗?不确定这是否特定于 Windows 10。我使用的是 Camel 版本 2.24.1。感谢您的宝贵时间。

【问题讨论】:

    标签: apache-camel eai


    【解决方案1】:

    这是在版本2.24.3 中修复的错误CAMEL-14127。您可以升级,或使用带有charset 选项的workaroud。

    .to("file://outputFolder?fileExist=Append&charset=utf-8")
    

    【讨论】:

      猜你喜欢
      • 2018-04-27
      • 2018-01-07
      • 1970-01-01
      • 2014-07-19
      • 1970-01-01
      • 2018-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多