石英调度程序:执行任务执行会导致触发器再也不会再次触发
问题描述:
我正在Java Web应用程序中使用石英实现。我们已经实现了TriggerListener类,因此当触发器触发时,它会调用vetoJobExecution(触发器触发器,JobExecutionContext jobExecutionContext)方法。我们检查参考表以查看作业是否应该运行。所有这些工作正常。石英调度程序:执行任务执行会导致触发器再也不会再次触发
中断的部分是如果作业不能运行,那么vetoJobExecution方法返回false。发生这种情况后,触发器将不会再次发射。这是我不明白的部分。看起来触发器应该继续触发,并且应该继续调用vetoJobExecution方法来查看作业是否应该运行。这根本不会发生 - 一旦工作被否决,触发器不会再次触发,vetoJobExecution方法永远不会被调用。
我们正在使用Quartz 1.5.2(是的,它是旧的,我知道)。
使用TriggerListener接口运行石英作业而不是的正确策略是什么?下次仍然触发触发器?
答
通过升级到版本1.7.3修复。