在maven项目中将战争部署到glassfish服务器后,Quartz Job未被触发

时间:2012-10-31 09:54:13

标签: java maven quartz-scheduler scheduler

好在web.xm我已经添加了监听器并在其上下文中已经写了:

JobDetail jd = new JobDetail("myjob", Scheduler.DEFAULT_GROUP, Myclasstobe triggered.class); CronTrigger tr = new CronTrigger("myCronTrigger", Scheduler.DEFAULT_GROUP, "0 00 12 ? * MON-FRI"); 
scheduler.scheduleJob(jd, tr); 

并且在Myclasstobetriggered中我已经覆盖了我的任务编写完成的执行方法。

1 个答案:

答案 0 :(得分:2)

GlassFish支持具有@Schedule的EJB 3.1。因此,如果部署在Java EE 6容器上,我建议使用标准工具。

@Singleton
public class TimerService {
    @EJB
    HelloService helloService;

    @Schedule(second="*/1", minute="*",hour="*", persistent=false)
    public void doWork(){
        System.out.println("timer: " + helloService.sayHello());
    }
}

copied from Adam Bien

另请查看Java EE 6 Tutorial