2009-07-16 4 views
0

У меня есть следующее:Как выполняется это выражение кварцевого cron

private String cronExpression = ""; 
private final String jobID = "MyJObID"; 
... 
Scheduler scheduler = ServiceLocator.getInstance().getScheduler(); 
CronTrigger trigger = new CronTrigger(jobID , Scheduler.DEFAULT_GROUP, cronExpression); 
JobDetail jobDetail = new JobDetail(jobID , Scheduler.DEFAULT_GROUP, MyJob.class); 
scheduler.scheduleJob(jobDetail, trigger); 

Мой вопрос в том, когда это задание запускается для пустого выражения cron?

+0

Это просто из любопытства, или ваше приложение действительно делает это? Если последнее, для чего? – skaffman

+0

мое приложение на самом деле это делает. Я изменил некоторые части кода и хотел бы сделать некоторые тесты. – n002213f

ответ

0

Спасибо за помощь, ребята, нашли проблему.

После некоторых ночи поисков я выяснил, что класс был зарегистрирован в JBoss как MBean и значение для атрибута выражения хрон был установлен каким-то осмысленное значение в дескрипторе развертывания

Вздох

1

Вы уверены, что работает?

Просто глядя на код org.quartz.CronExpression#buildExpression() метод это выглядит как исключение должно быть брошено:

 if (exprOn <= DAY_OF_WEEK) { 
      throw new ParseException("Unexpected end of expression.", 
         expression.length()); 
     } 

     // exprOn should be equal to SECOND in case of empty String given 

[проверено в кварце 1.6.0]

+0

да, это делает, используя Quartz 1.5.1 – n002213f

+0

FWIW его отправил каждое утро в 8:00 – n002213f

+0

Глядя на источник Quartz 1.5.1 (на этот раз это CronTrigger.buildExpression()), там же выдается такое же исключение. Вы пытались отладить и установить там точку останова? –

 Смежные вопросы

  • Нет связанных вопросов^_^