关于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>
格式不对吧