안녕하세요 저는 쿼츠 스케줄러를 사용하여 여러 가지 작업을 수행해야하는 cron을 트리거하고 있습니다. 동일한에 대한 나의 코드는 다음과 같다 : 내 InitServlet 클래스의 초기화() 메소드에서쿼츠 스케줄러가 크론 작업을 시작하지 못했습니다
, 내 TimerServer 클래스에서 내 TimerServer
public class InitServlet extends HttpServlet {
public void init(ServletConfig config) throws ServletException {
try {
System.out.println("Starting the CRON");
//Set the DSO Handler CRON
TimerServer task = TimerServer.getInstance();
task.setTask();
} catch (Exception ex) {
System.out.println("Failed to start the cron");
ex.printStackTrace();
}
}
을 정의하고 난 다음 방법을
public void setTask() {
try{
this.setSubscriptionDailyJob();
} catch(SchedulerException ex) {
log.error("SchedulerException: "+ex.getMessage(), ex);
}
private void setSubscriptionDailyJob() throws SchedulerException {
log.info("Step 1 ");
Scheduler scheduler = schedulerFactory.getScheduler();
log.info("Step 2 ");
JobDetail subscriptionJob = new JobDetail("subscription", "subscriptiongroup", SubscriptionDaily.class);
log.info("Step 3 ");
// Initiate CronTrigger with its name and group name
CronTrigger subscriptionCronTrigger = new CronTrigger("subscriptionCronTrigger", "subscriptionTriggerGroup");
try {
log.info("Subscription cron: "+Constants.SUBSCRIPTION_CRON);
// setup CronExpression
CronExpression cexp = new CronExpression(Constants.SUBSCRIPTION_CRON);
// Assign the CronExpression to CronTrigger
subscriptionCronTrigger.setCronExpression(cexp);
} catch (Exception ex) {
log.warn("Exception: "+ex.getMessage(), ex);
}
scheduler.scheduleJob(subscriptionJob, subscriptionCronTrigger);
scheduler.start();
}
내 SubscriptionDaily 클래스에서
:
public class SubscriptionDaily implements Job {
public void execute(JobExecutionContext arg0) throws JobExecutionException {
//Actions to be performed
}
}
지금 내 로그를 확인하면서 1 단계, 2 단계를 얻었지만 그 이상은 아닙니다.
내 코드가 TimerServer 클래스 자체에 갇혀 있습니다. 스케줄러 로그 WRT는 다음과 같습니다
17:24:43 INFO [TimerServer]: Step 1
17:24:43 INFO [SimpleThreadPool]: Job execution threads will use class loader of thread: http-8080-1
17:24:43 INFO [SchedulerSignalerImpl]: Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
17:24:43 INFO [QuartzScheduler]: Quartz Scheduler v.1.6.5 created.
17:24:43 INFO [RAMJobStore]: RAMJobStore initialized.
17:24:43 INFO [StdSchedulerFactory]: Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
17:24:43 INFO [StdSchedulerFactory]: Quartz scheduler version: 1.6.5 17:24:43 INFO [TimerServer]: Step 2
나는 로그 항목이없는 생각 : 는 [QuartzScheduler] : 스케줄러 DefaultQuartzScheduler은 $ _이 _ NON_CLUSTERED 시작했다.
도와주세요.