首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

关于quartz的一个奇怪的有关问题

2011-11-19 
关于quartz的一个奇怪的问题我在一个web工程里面添加quartz功能,下载了quartz1.5.0安装后,添加了如下代码:

关于quartz的一个奇怪的问题
我在一个web工程里面添加quartz功能,下载了quartz1.5.0
安装后,添加了如下代码:
//在web.xml中添加
<servlet>      
                  <servlet-name>      
                          QuartzInitializer      
                  </servlet-name>      
                  <servlet-class>      
                          org.quartz.ee.servlet.QuartzInitializerServlet      
                  </servlet-class>
                  <init-param>
          <param-name> config-file </param-name>
          <param-value> /quartz.properties </param-value>  
        </init-param>
                  <init-param>
          <param-name> shutdown-on-unload </param-name>
          <param-value> true </param-value>
        </init-param>
        <load-on-startup> 1 </load-on-startup>
</servlet>

//添加了web-inf/classes/quartz.properties
#============================================================================
#   Configure   Main   Scheduler   Properties    
#============================================================================
org.quartz.scheduler.instanceName   =   org.quartz.scheduler.instanceId   =   AUTO
#============================================================================
#   Configure   ThreadPool    
#============================================================================
org.quartz.threadPool.class   =   org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount   =   3
org.quartz.threadPool.threadPriority   =   5
#============================================================================
#   Configure   Plugins  
#============================================================================
org.quartz.plugin.triggHistory.class   =   org.quartz.plugins.history.LoggingJobHistoryPlugin
org.quartz.plugin.jobInitializer.class   =   org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName   =   quartz_job.XML
org.quartz.plugin.jobInitializer.overWriteExistingJobs   =   true
org.quartz.plugin.jobInitializer.failOnFileNotFound   =   true
org.quartz.plugin.jobInitializer.scanInterval   =   10

//在web-inf/classes中添加quartz_job.XML
<?xml   version= "1.0 "   encoding= "UTF-8 "?>
<quartz>
    <job>
        <job-detail>
            <name> jobScheduler </name>
            <group> group1 </group>
            <job-class> admin2006.quartz.Helloworld </job-class>
        </job-detail>
        <trigger>


            <cron>
                <name> testTrigger </name>
                <group> group1 </group>
                <job-name> jobScheduler </job-name>
                <job-group> group1 </job-group>
                <cron-expression> 5,15,25,35,45,55   *   *   *   *   ? </cron-expression>
          </cron>
        </trigger>
    </job>
</quartz>

//在src\admin2006\quartz添加Helloworld.java
package   admin2006.quartz;
import   java.util.Date;

import   org.apache.commons.logging.Log;
import   org.apache.commons.logging.LogFactory;
import   org.quartz.Job;
import   org.quartz.JobExecutionContext;
import   org.quartz.JobExecutionException;

public   class   Helloworld   implements   Job{
public   Helloworld()   {

}

private   static   Log   _log   =   LogFactory
.getLog(Helloworld.class);

public   void   execute(JobExecutionContext   context)
throws   JobExecutionException   {
_log.info( "Hello   World!   -   "   +   new   Date());
}
}


为何运行工程的时候,quartz显示执行了,但是report却是null呢?
恳请大家帮帮忙!!

执行结果控制台显示:
信息:job   jobinitializationplugin.jobinitializationplugin_jobinitializer   execution   complete   at   22:40:03   06/05/2007   and   reports:null

为什么没有按照我的程序设定返回 "Hello   World!   -   时间 "呢?

[解决办法]
不明白,参考一下
<?xml version='1.0' encoding='utf-8'?>
<quartz>
<job>
<job-detail>
<name>ScanFTPSiteJob</name>
<group>DEFAULT</group>
<description>
A job that scans an ftp site for files
</description>
<job-class>ScanFTPSiteJob</job-class>

<job-data-map allows-transient-data="true">
<entry>
<key>FTP_HOST</key>
<value>\home\cavaness\inbound</value>
</entry>

<!-- Other neccessary Job parameters here -->

</job-data-map>
</job-detail>

<trigger>
<simple>
<name>ScanFTPSiteJobTrigger</name>
<group>DEFAULT</group>
<job-name>ScanFTPSiteJob</job-name>
<job-group>DEFAULT</job-group>
<start-time>2005-09-11 6:10:00 PM</start-time>
<!-- repeat indefinitely every 60 seconds -->
<repeat-count>-1</repeat-count>
<repeat-interval>60000</repeat-interval>
</simple>
</trigger>

</job>
</quartz>

[解决办法]
先帮顶
------解决方案--------------------


5,15,25,35,45,55 * * * * ?

这个表达式对么?看起来有点怪
[解决办法]
2008-10-31 21:05:25 INFO Job group1.jobScheduler fired (by trigger group1.testTrigger) at: 21:05:25 10/31/2008 -[org.quartz.scheduler.instanceId = AUTO_Worker-2] org.quartz.plugins.history.LoggingJobHistoryPlugin
Hello World! - Fri Oct 31 21:05:25 CST 2008
2008-10-31 21:05:25 INFO Job group1.jobScheduler execution complete at 21:05:25 10/31/2008 and reports: null -[org.quartz.scheduler.instanceId = AUTO_Worker-2] org.quartz.plugins.history.LoggingJobHistoryPlugin

我的测试结果,由我的结果断定,你的log没有配对,你用system.out.printn试试
另外你的表达式太长了,好像不对,待验证.
[解决办法]
<start-time>2005-09-11 6:10:00 PM </start-time> 
格式不对吧

热点排行