Tag: quartz scheduler

使用Quartz的动态作业数据

当我的进程收到消息时,它需要启动一个计时器并在X秒内执行一些逻辑。 这些作业需要存储在JDBC存储中,据我所知,这可能与此问题无关。 基于我所阅读的内容,我应该能够为一个Job类分配一个具有不同类似属性值的JobDataMap,但是我无法找到任何文档或示例来支持这个用例。 也许我的Google-fu很弱。 那有意义吗? 有一个Job类,并以某种方式存储JobDataMap来填充该Job类并在每个消息的基础上运行它?

Quartz Spring CronTrigger发射次数超过配置次数

我有一个cronTrigger工作“digestJob”: 这是我的schedulerFactoryBean配置: 问题是,digestCronTrigger应该在每天下午5:35被解雇,但它在指定时间被​​解雇了两次。 但是,当我使用SimpleTrigger时: 一切正常,触发器每10秒触发一次。 为什么digestCronTrigger被解雇了两次? 我的cron表达式有问题,还是有任何我失踪的属性? 任何帮助都感激不尽。

使用Quartz只运行一次Job

有没有办法使用Quartz(java)只运行一次作业。 我知道在这种情况下使用Quartz是没有意义的,但事情是我有多个工作,并且它们运行多次,所以我使用Quartz。 这是否可能。

Quartz Scheduler – RAM和JDBC Job store之间的区别是什么

我想在我的应用程序中使用Quartz Scheduler框架。 我遇到了两种类型的JobStores: 1)RAM Job Store 2)JDBC Job store。 我想知道在哪种情况下我必须使用哪个工作店。 他们之间的利弊是什么? 对此有任何想法对我很有帮助,我很感激。

Quartz StatefulJob / non-StatefulJob

你能否向我解释一下在石英中StatefulJob的确切平均值,它与没有StatefulJob的区别?

当一个石英作业触发时,它是一个新的作业类实例吗?

我对Quartz很新,我对工作生命周期有些怀疑。 假设我有一个单独的工作配置来做一些事情。 这项工作开始并结束其工作。 当它再次触发它是同一个实例(可能设置为睡眠并由调度程序唤醒)或者它是一个新的作业实例(一旦作业结束它就被杀死,当再次满足触发条件时,创建一个新的作业实例) ? 我问这样的问题,因为当我调试我的应用程序(带有石英支持的Spring 3 mvc)时,我看到作业的新实例和每次触发作业时打开的SimpleThreadPool $ WorkerThreadRun()的新线程,以便SimpleThreadPool $ WorkerThreadRun()线程堆积起来,永不终止。 我只是想知道这种行为是否正常还是我必须填补内存;-) 谁能给我一些解释? 提前致谢。

Tomcat:OutOfMemoryError Permgen Space

我正在使用Tomcat 6开发JSP应用程序。 由于我确实将Quartz Scheduler Framework和Log4J库添加到项目中,因此Tomcat在重新部署时开始抛出此exception。 我已经了解了问题的原因,现在我知道必须使用类加载器。 所以,我想问题可能是由自动加载某些类的记录器库引起的。 我该如何处理这个问题? 有一种方法可以在不使用log4j.properties文件的情况下设置记录器,以确保类加载器能够正常工作。

使用Quartz-scheduler在Jobs中的自定义对象参数

我正在测试Quartz来安排工作。 但是,该作业包含3个不可序列化的参数。 我在下面创建了一个示例应用程序,指示我如何实现该function。 有谁知道如何使用Quartz将自定义对象用作参数? 下面是调度工作的触发器,我已经评论了给我问题的区域。 public class Trigger { public void run() throws Exception { SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); Date startTime = DateBuilder.nextGivenSecondDate(null, 15); JobDetail job = newJob(SimpleJob.class) .withIdentity(“job6”, “group1”) .build(); SimpleTrigger trigger = newTrigger() .withIdentity(“trigger6”, “group1”) .startAt(startTime) .withSchedule(simpleSchedule() .withIntervalInSeconds(60) .repeatForever()) .build(); Date ft = sched.scheduleJob(job, trigger); TestObject testObject = […]

如何手动停止/中断石英调度程序作业

我在主类中运行一个简单的石英作业,每30秒运行一次。 public class Start { public static void main(String[] args) throws Exception { SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); JobDetail job = newJob(MyJob.class).withIdentity(“myJob”,”XXX”).build(); Trigger trigger = TriggerBuilder.newTrigger() .withSchedule( SimpleScheduleBuilder.simpleSchedule() .withIntervalInSeconds(30) .repeatForever()) .build(); sched.scheduleJob(job, trigger); sched.start(); } } 在这里,我正在实施InterruptableJob public class MyJob implements InterruptableJob { private volatile boolean isJobInterrupted = false; private JobKey […]

石英的图书馆冲突

有一个奇怪的情况。 我在我的企业应用程序中使用Glassfish服务器。 在那个应用程序中,我使用的是JSF,Richfaces,Quartz,Jasper Reports和Commons Email。 当我构建并部署应用程序到我的开发。 计算机,开发和测试服务器,一切正常。 但是,当我使用相同的glassfish将应用程序部署到生产服务器时,我无法运行Quartz调度程序。 它让我觉得公共collections有一些问题。 我知道某处有冲突,但我无法找到。 你能给我一些指点吗? 顺便说一下,我正在使用NetBeans 6.5。 这是日志: [#|2009-02-13T02:00:03.055+0000|WARNING|sun-appserver9.1|javax.enterprise.resource.webcontainer.jsf.lifecycle|_ThreadID=22;_ThreadName=httpSSLWorkerThread-80-4;_RequestID=97d21f45-2489-486c-b8d9-68625776c546;|#{SchedulerController.play}: java.lang.NoSuchMethodError: org.apache.commons.collections.SetUtils.orderedSet(Ljava/util/Set;)Ljava/util/Set; javax.faces.FacesException: #{SchedulerController.play}: java.lang.NoSuchMethodError: org.apache.commons.collections.SetUtils.orderedSet(Ljava/util/Set;)Ljava/util/Set; at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:107) at javax.faces.component.UICommand.broadcast(UICommand.java:383) at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321) at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296) at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253) at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244) at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198) at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178) at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290) at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390) at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517) […]