首页 > 解决方案 > Apache File 组件 - 如果文件不存在则抛出错误

问题描述

如果文件存在,则下面的代码将读取文件的内容,但如果文件不存在,则它只会卡在该行中。

如果目录中不存在提到的文件(以下示例中的 myFile.txt),我如何抛出错误或出现“file://”语句?

from("file://input?fileName=myfile.txt&delete=true")
            .log("${body}");

标签: file-ioapache-camel

解决方案


这不是文件使用者的工作方式,也不是骆驼路线的想法。它是事件驱动的,所以如果一个文件被放到输入目录中,myfile.txt那么 Camel 就会做出反应。在那之前它一直在等待。

如果要检查文件是否存在,可以使用 Java 的java.io.FileAPI。

但是,可以将文件使用者配置为在没有文件时发送空消息,但随后它将继续执行此操作。请参阅文档https://camel.apache.org/components/latest/file-component.html


推荐阅读