gwt 웹 애플리케이션에서 석영 스케쥴러를 사용하고 있습니다. 내 애플리케이션 구조는 아래와 같습니다.석영 스케쥴러가 전쟁 중이 아닌데
나는 두 개의 프로젝트가있다. 하나는 gwt 웹 애플 리케이션 클라이언트 프로젝트 (Ui 부분) & 다른 서버 쪽 호출을위한 자바 프로젝트입니다. (데이터베이스 상호 작용). 클라이언트 프로젝트에서 나는 참고 용으로 서버 프로젝트를 넣었다. 클라이언트에서 전쟁을 만들고 war 폴더에 서버 프로젝트 병을 추가합니다.
이제는 자동 완성 작업을 위해 서버 측 스케줄러를 사용했습니다. 로컬로 (out war없이) 스케줄러가 제대로 작동하면서 사용하고 있습니다.
그러나 jboss 서버에서 전쟁을 실행하는 동안 스케줄러가 실행되고 있지 않습니다.
내 모든 스케줄러 관련 코드와 Quartz.jar은 서버 측에있다. 클라이언트 측 프로젝트에 Quartz에 대한 참조는 없다.이 문제는 무엇인가 ??? 여기
스케줄러
public class QuartzJob implements Job {
public void execute(JobExecutionContext jobExecutionContext)
throws JobExecutionException {
JobDataMap map = jobExecutionContext.getJobDetail().getJobDataMap();
ActivityTransactionSettingsMap map2 = (ActivityTransactionSettingsMap) map
.get("task");
if (map2.getAutoCompleteDate() != null) {
WorkFlowFacade facade = new WorkFlowFacade();
facade.completeAutoCompleteTask(map2);
Scheduler scheduler=(Scheduler) map.get("scheduler");
try {
scheduler.shutdown();
} catch (SchedulerException e) {
e.printStackTrace();
}
}
}
}
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
scheduler.start();
JobDataMap map2 = new JobDataMap();
map2.put("task", actsMap);
map2.put("scheduler", scheduler);
JobDetail job = newJob(QuartzJob.class).withIdentity("job"+String.valueOf(actsMap.getId()))
.usingJobData(map2).build();
Trigger trigger = newTrigger().withIdentity("trigger"+String.valueOf(actsMap.getId()))
.startAt(actsMap.getAutoCompleteDate()).build();
scheduler.scheduleJob(job, trigger);
내 코드입니다 아니면 내가 클라이언트 측 만에 내 스케줄러 관련 프로젝트를 이동해야합니까? 이 문제를 해결할 방법이 없습니다. 제발 도와주세요
스케줄러는 내가 볼 수있는 한 GWT 코드와 아무 관련이 없습니다. 스케줄러에 대한 트리거는 무엇입니까? –
다음은 트리거입니다. 트리거 트리거 = newTrigger(). withIdentity ("trigger") .startAt (tomaroDate) .build(); –
잘 모르겠다. 다음날부터 지속적으로 실행해야합니까? 이게 니가 필요한거야? –