我正在使用 EJB 3.1。在下面的代码中,我试图创建一个每年重复的计时器:
ScheduleExpression scheduleExpression = new ScheduleExpression();
Date now = new Date();
scheduleExpression.start(now);
Calendar calendar = Calendar.getInstance();
calendar.setTime(now);
scheduleExpression.minute(calendar.get(Calendar.MINUTE));
scheduleExpression.hour(calendar.get(Calendar.HOUR_OF_DAY));
scheduleExpression.dayOfMonth(calendar.get(Calendar.DAY_OF_MONTH));
scheduleExpression.month(calendar.get(Calendar.MONTH));
但它不起作用,实际上行为是非常随机的(在某些重复中有效,而在另一种则无效)。
奇怪的是,我也有每月重复一次(见下面的代码)并且它正在工作。
ScheduleExpression scheduleExpression = new ScheduleExpression();
Date now = new Date();
scheduleExpression.start(now);
Calendar calendar = Calendar.getInstance();
calendar.setTime(now);
scheduleExpression.minute(calendar.get(Calendar.MINUTE));
scheduleExpression.hour(calendar.get(Calendar.HOUR_OF_DAY));
scheduleExpression.dayOfMonth(calendar.get(Calendar.DAY_OF_MONTH));
任何想法?