Я новичок в JSP и Quartz Scheduling! В этом проекте я пытаюсь заставить планировщик кварца продолжать работать, если сервер выключен, а затем игнорирует пропущенные задания.Ошибка кварца при восстановлении работы
Для этого я исследовал JobPersistence и я изменил файл quartz.properties как следующее:
org.quartz.threadPool.threadCount=5
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.tablePrefix = QRTZ_
org.quartz.jobStore.useProperties = true
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.dataSource = myDB
org.quartz.dataSource.myDB.driver = com.mysql.jdbc.Driver
org.quartz.dataSource.myDB.URL = jdbc:mysql://localhost:3306/contacts
org.quartz.dataSource.myDB.user = root
org.quartz.dataSource.myDB.password = root
файл web.xml содержит следующее:
...
<listener>
<listener-class>
org.quartz.ee.servlet.QuartzInitializerListener
</listener-class>
</listener>
...
Я добавил таблицы в БД, и когда я выбираю, я вижу, что он действительно вставил триггеры в свои таблицы.
Триггер построен как:
Trigger trig = TriggerBuilder
.newTrigger()
.startAt(scal.getTime())
.withSchedule(
SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMinutes(minutes).repeatForever())
.endAt(ecal.getTime()).build();
Теперь, когда я бегу мое веб-приложение, я запланировать задание и выполняет. Затем выключите сервер tomcat и запустите его снова. Он печатает следующее сообщение об ошибке в регистраторе:
org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't recover jobs: null [See nested exception: java.lang.NullPointerException]]
Я попытался выполнением следующего заявления один раз в MySQLWorkbench:
UPDATE QRTZ_TRIGGERS SET NEXT_FIRE_TIME=1 WHERE NEXT_FIRE_TIME < 0;
Теперь я получил эту новую ошибку:
.manage - MisfireHandler: Error handling misfires: Unexpected runtime exception: null
org.quartz.JobPersistenceException: Unexpected runtime exception: null [See nested exception: java.lang.NullPointerException]
Если вы хотите, чтобы я редактировать и включать StackTrace, я могу сделать это ...
На самом деле мне не нужно было устанавливать какие-либо настройки, хотя ваш комментарий показал, что я могу следовать ... Мне пришлось вручную выполнить sql-скрипт, хранящийся в решении ... тогда он сработал ... – Darkglow