3
내 응용 프로그램 종속성을 연결하는 데 Spring annotation을 사용하고 있습니다.Quartz JobListener를 autowire하는 방법
가 여기에 구성되어 마찬가지로 지금까지 내가 말할 수있는 석영의 SchedulerFactoryBean 내 JobListener를 삽입 할 수있는 방법은 없습니다 : 나는 현재 프로그래밍 JobListener를 구성하는 데
@Bean(name="schedulerFactory")
public SchedulerFactoryBean schedulerFactoryBean() throws Exception {
SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean();
schedulerFactoryBean.setApplicationContextSchedulerContextKey("applicationContext");
schedulerFactoryBean.setConfigLocation(new ClassPathResource("quartz.properties"));
schedulerFactoryBean.setDataSource(dataSource);
// This call results in the error:
// java.lang.IllegalStateException: Non-global JobListeners not supported on
// Quartz 2 - manually register a Matcher against the Quartz ListenerManager instead
//schedulerFactoryBean.setJobListeners(new JobListener[] { jobActivityListener() });
return schedulerFactoryBean;
}
생성 할 때 작업이 트리거 첫 번째 : 우리가 종속성을 관리하는 봄을 좋아하고, JobListener에 필요한 의존성을 주입하는 것처럼
ListenerManager listenerManager = scheduler.getListenerManager();
if (listenerManager.getJobListener(jobKey.getName()) == null) {
logger.debug("ADDING JOB LISTENER FOR " + jobKey.getName());
listenerManager.addJobListener(new JobActivityListener(), keyEquals(jobKey));
}
이는 적합하지 않습니다.
Spring을 통해 작업 수신자를 구성하는 데 필요한 정보가 있습니까?