繁体   English   中英

Mule4使用读连接器读取文件

[英]Mule4 using read connector to read a file

我是Mule4的新手并且是第一次使用它。 我试图将文件从一个目录移动到另一个目录。 我有一个“读取文件”连接器和“写入文件”连接器。 在Read连接器中,我指定了文件路径和工作目录。 在Write连接器上,我还指定了工作目录和路径。 但是,该文件不会从源目录移动到目标目录。 但是如果我在流的开头添加一个HTTP侦听器,那么如果我通过http:// localhost:8081访问它,它将会起作用。 但我想知道如果源中有新文件,我该如何实现这一点,所以流程会自动将文件从源目录移动到目标目录? 请看截图

此流不起作用

这个流程有效

您需要一些东西来触发流程运行。 file:read不会自动执行此操作,这就是为什么要触发的http请求对您有效。

所有流都需要一个'Source'来触发它们,除非你使用flow-ref从其他流调用它们(或者使用lookup()从dataweave调用它们)。

如果您知道所需的确切文件,则可以在file:read前放置一个调度file:read来触发流程:

<scheduler>
  <scheduling-strategy>
    <fixed-frequency startDelay="5" frequency="10" timeUnit="SECONDS"/>
  </scheduling-strategy>
</scheduler>

或者你可以使用一个文件:listener直接监听目录等中的新文件作为源:

<flow name="onNewFile">
  <file:listener config-ref="file" directory="test-data/in" autoDelete="true">
    <scheduling-strategy>
      <fixed-frequency frequency="1000"/>
    </scheduling-strategy>
  </file:listener>
  ...
</flow>

您可以使用固定频率或cron。 更多细节: https//docs.mulesoft.com/mule-runtime/4.1/scheduler-xml-reference

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM