如果监视的文件夹不存在,我如何 运行 一些代码?

How can I run some code in the event that a watched folder does not exist?

我有一个使用 [File] On New or Updated File 事件源的 Mule 4 流程。此元素配置为等待特定文件夹中的文件更改。

当我部署我的流程时,部署的应用程序无权访问指定的文件夹,生成一条日志消息并且流程终止。但是,我想在这种情况下添加一些额外的处理。 (我想将消息记录到备用事件日志中)。

我尝试向流中添加一个 On Error Propagate 元素,但是当错误发生时这并没有被触发 - 我认为这是因为错误是 system error rather than a messaging error.

如果我可以在 On New or Updated File 元素 之前 添加一个步骤,那么我可以检查该文件夹是否存在,并在那里执行额外的代码 - 但我也看不到办法。

好吧,我能够做到 "works"。我创建了另一个在(长)计时器上运行的流程,该计时器立即运行并通过尝试列出其内容来检查文件夹是否存在。如果失败,则到达该流程的 On Error ... 块,因为在这种情况下错误被视为消息错误而不是系统错误。

不是一个理想的解决方案,但仍然是一个解决方案。

我可以建议您监视应该包含 none 现有文件夹的文件夹吗? 例如,您要监控 /one/two/three/abc.txt。 三个 不存在。观看 two 新文件和更新文件。