当前位置: 首页 > 知识库问答 >
问题:

读取时找不到文件时如何识别异常(Spring批处理)

越涛
2023-03-14

我刚刚开始处理Spring批处理(版本3.0.6)。我有一个工作和内部步骤,我有阅读器->处理器->编写器。

如果读取时未找到文件,我们如何捕获或识别异常。在这种情况下,我想触发电子邮件。

共有1个答案

袁志专
2023-03-14

您可以使用StepExecutionListener处理由ItemStream#Open引发的异常(就像在FlatFileItemReader中打开文件一样),并从那里发送电子邮件。要获取导致失败的异常,可以查看stepexecution#GetFailureExceptions,它将包含导致步骤失败的异常。

您可以在以下位置了解javadoc中关于stepExecutionListener的更多信息:https://docs.spring.io/spring-batch/apidocs/org/springframework/batch/core/stepExecutionListener.html

 类似资料:
  • 问题内容: 我正在使用Java在Linux EXTREME VPS上存储图像 当我将其存储在服务器路径上时 使用以下代码读取路径 当我使用上面的代码阅读时,我得到以下异常 如何解决这个问题呢? 还有其他从Linux服务器读取文件的方法吗? 问题答案: 我认为问题在于您使用的文件路径错误。 您说您正在Linux服务器上读取文件,似乎您正在尝试在Windows计算机上读取文件。由此推断,您已将Linu

  • 我正在尝试创建一个应用程序,该应用程序使用spring-batch-excel扩展名来读取用户通过web界面上传的Excel文件,以便解析Excel文件中的地址。 当代码运行时,没有错误,但我得到的只是我日志中的以下内容。即使我的处理器和Writer中都有log/syso(它们从未被调用过,我所能想象的是它没有正确读取文件,也没有返回要处理/写入的数据)。是的,这个文件有数据,实际上有几千条记录。

  • 我正在尝试用单节点hadoop集群运行一个示例程序。我在运行示例程序(jar文件)时遇到一个异常。 多谢了。

  • 我第一次安装Flume。我使用的是hadopop-1.2.1和Flume 1.6.0 我试着按照这个指南建立一个水槽代理。 我执行了这个命令:< code > $ bin/flume-ng agent-n $ agent _ name-c conf-f conf/flume-conf . properties . template 它说< code>log4j:ERROR setFile(null

  • 我是Spring框架的新手,我正在使用Spring做一个简单的项目,但介于两者之间。在我的项目中,我使用Spring Poller从目录中读取文件。然后通过各种通道处理该文件并将其发送到队列。但问题是“file-inbing-channel-适配器”(我正在使用)一次只读取一个文件。所以我需要一个一次读取和处理多个文件的解决方案。有没有办法在Spring集成中实现多线程。谢谢你。

  • 我使用Spring的@ControllerAdvice和@ExceptionHandler进行异常处理。任何方法都会从Controller中抛出自定义异常,并由相应的@ExceptionHandler处理它。如果发生运行时异常(例如任何HibernateException),那么它将抛出运行时异常,并且我没有任何@ExceptionHandler用于运行时异常。