Я реализовать работу Quartz, используя услугу DAO, как показано ниже:Кварц не поддерживает @autowired
public class InitialFetchFrequenceScheduleJob implements Job
{
@Autowired
private FetchFrequencyService fetchFrequencyService;
@Override
public void execute(JobExecutionContext context) throws JobExecutionException
{
try
{
List<FetchFrequency> frequencies = this.fetchFrequencyService.findAll(FetchFrequency.class);
Проблема заключается в том, когда вызов выполнить() метод, то this.fetchFrequencyService.findAll(FetchFrequency.class);
выбросит NPE, потому что fetchFrequenceService является недействительным. Я здесь что-то не так? Любой ответ очень ценится. Спасибо!
P/s Я использую Quartz 2.1.7
Обновление: Это FetchFrequencyServiceImpl:
@Service("fetchFrequencyService")
public class FetchFrequencyServiceImpl extends GenericDaoImpl implements FetchFrequencyService
{
}
Update: Код реализации задания:
JobDetail job = JobBuilder.newJob(InitialFetchFrequenceScheduleJob.class).build();
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MINUTE, 1);
Trigger trigger = TriggerBuilder.newTrigger().forJob(job).startAt(cal.getTime()).build();
Scheduler scheduler = new StdSchedulerFactory("quartz.properties").getScheduler();
scheduler.start();
scheduler.scheduleJob(job, trigger);
Можете ли вы показать код, который вы используете для интеграции Spring с кварцем? – geoand
Я обновил. – jack
@geoand обновляемые – jack