首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Quartz属性不会触发Quartz作业

Quartz属性不会触发Quartz作业
EN

Stack Overflow用户
提问于 2012-03-07 14:46:19
回答 1查看 6.6K关注 0票数 1

我使用的是Quartz 2.1.3。我的quartz.properties

代码语言:javascript
复制
#===================================================
# Configure the Job Initialization Plugin
#===================================================

org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
org.quartz.plugin.jobInitializer.fileNames = quartz-jobs.xml
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10
org.quartz.plugin.jobInitializer.wrapInUserTransaction = false

我的quart-jobs.xml

代码语言:javascript
复制
<?xml version='1.0' encoding='utf-8'?>
<job-scheduling-data xmlns="http://www.quartz-scheduler.org/xml/JobSchedulingData"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.quartz-scheduler.org/xml/JobSchedulingData http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd"
  version="1.8">

    <schedule>
        <job>
            <name>myjob</name>
            <group>MYJOBGROUP</group>

            <description>Job to Test</description>
            <job-class>com.upd.test.TestQuartz</job-class>
            <trigger>
            <cron>
                <name>my-trigger</name>
                <group>MYTRIGGER_GROUP</group>
                <job-name>myjob</job-name>

                <job-group>MYJOBGROUP</job-group>
                <cron-expression>0/5 * * * * ?</cron-expression>

            </cron>
        </trigger>
    </schedule>
</job-scheduling-data>

我的web.xml

代码语言:javascript
复制
<context-param>
         <param-name>quartz:config-file</param-name>
         <param-value>quartz.properties</param-value>
     </context-param>
     <context-param>
         <param-name>quartz:shutdown-on-unload</param-name>
         <param-value>true</param-value>
     </context-param>
     <context-param>
         <param-name>quartz:wait-on-shutdown</param-name>
         <param-value>false</param-value>
     </context-param>
     <context-param>
         <param-name>quartz:start-scheduler-on-load</param-name>
         <param-value>true</param-value>
     </context-param>

<listener>
         <listener-class>
             org.quartz.ee.servlet.QuartzInitializerListener
         </listener-class>
     </listener>

我的TestQuartz类:

代码语言:javascript
复制
package com.upd.test;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class TestQuartz implements Job{
    private Logger logger = LoggerFactory.getLogger(TestQuartz.class);
    public void printMe() {
        logger.trace("Run Me");
    }   

    public void execute(JobExecutionContext arg0) throws JobExecutionException {
        printMe();
    }
}

当tomcat启动时,我将quartz.propertiesquartz-jobs.xml放在\WEB-INF\classes下,我在日志中看到的唯一一件事是:

代码语言:javascript
复制
(org.quartz.ee.servlet.QuartzInitializerListener:147) - Quartz Initializer Servlet loaded, initializing Scheduler...
(org.quartz.ee.servlet.QuartzInitializerListener:264) - Quartz Scheduler successful shutdown.

quartz-jobs.xml似乎不是由quartz.properties触发的。我做错什么了吗?任何回复都是非常感谢的。谢谢!

已解决:

代码语言:javascript
复制
- Add threadpool defined in `quartz.properties`.

- Download jta-1.1.jar.

谢谢你的评论!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-07 16:28:49

代码语言:javascript
复制
Quartz Scheduler successful shutdown.

当整个应用程序关闭时会出现一条消息,您是否在启动过程中立即看到此消息?这意味着调度程序甚至没有运行。还要确保加载了quartz.properties文件。故意在quartz.properties或quart-jobs.xml中犯语法错误(使用不正确的插件类名,在开头添加一些假文本...)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9596957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档