2016-03-24 90 views
1

卓悦,停止春季批次失败

我需要停止正在运行的春天批次如果故障状态,在我的读者,一个测试返回True。我怎样才能做到这一点 ? 我实际上使用System.exit(-1),但我认为spring批处理有他自己的方式来停止以不同状态运行批处理。

这里是我想停止批我的读者的功能:

private List<Test> getListTest() throws Exception { 
    ... 
      if (stop) { 
      logger.error("Stop running batch"); 
      System.exit(-1); 
      return null; 
      } 
    ... 
} 

的Merci等保姆JOURNEE

回答

1

有两种方法失败弹簧批处理作业。

  1. 只要在读取器中抛出一个异常,spring批处理会自动停止失败状态的作业。
  2. 您可以使用joboperator.stop()方法停止任何正在运行的作业。此方法将发送一个信号来停止Job,但只有在事务完成后才会停止作业。
+0

Bonjour DevG, JobOperator接口似乎做我想做的。谢谢 – obiyadi