我想知道在使用文件时验证文件名的最佳方法是什么。我知道我可以使用排除模式,我也看到我可以定义客户GenericFileFilter。
但是这些过滤器返回true或false。我宁愿破例。
所以我想知道使用bean还是自定义处理器更好?
感谢
提取文件后,可以调用一个处理器,使用exchange.getIn().getHeader("CamelFileName").toString();
从交换机中提取文件名您可以执行任何想要的验证,并在那里抛出异常。
您可以在bean中执行相同的任务,只需要将CamelFileName
标头作为参数传递给bean。
如果你不想调用处理器,你也可以在骆驼路线中调用。你可以做一些类似的事情
.choice()
.when()
.simple("${header.CamelFileName} == 'your condition'")
.throwException(MyCustomException.class)
.end()//ends the choice
.continue_with_your_route