Вы предлагаете использовать.
у динамически добавлять триггеры в работу, но не могу найти какие-либо полезные методы из планировщика
Хотя я просто мог бы вызывать метод scheduleJob несколько раз, но это дает мне исключение ObjectAlreadyExists «потому что один уже существует с этой идентификацией».
Как я могу это сделать?
РЕДАКТИРОВАТЬ
private boolean scheduleLoadJob( XfuScheduleTimeInfo time )
{
LoadScheduleJob job = new LoadScheduleJob( time );
JobDetail detail;
Integer id = Integer.valueOf( time.getScheduleId() );
if( _hashMap.containsKey( id ) )
{
detail = _hashMap.get( Integer.valueOf( time.getScheduleId() ) );
}
else
{
detail = job.getDetail();
_hashMap.put( id, detail );
}
try
{
Trigger newTrigger = job.getTrigger();
_log.debug( "------" + newTrigger.getKey() );
_quartzScheduler.scheduleJob( detail, newTrigger );
return true;
}
catch( ParseException e )
{
_log.error( "Unable to parse cron expression for " + job.getInfo() );
return false;
}
catch( SchedulerException e )
{
_log.error( "Job scheduling failed for " + job.getInfo() );
return false;
}
}
С консольным выходом
------ LoadJobs.Trigger-44
пакетное приобретение 1 триггеров
Создание экземпляра задания «LoadJobs.Job-42», class = com.scheduling.LoadScheduleJob
Вызов выполнить на задании LoadJobs.Job-42
пакетное приобретение 1 триггеров
Иов призвал: 42: 44
------ LoadJobs.Trigger-45
Не удалось запланировать задание на 42: 45 - 1/5 * *? * *