2012-04-26 13 views
1

私は前の質問をQuartz properties does not trigger Quartz Jobで見つけ、そこから大きく借りた(クォーツとすべての人の初心者である)が、私の仕事は発射していないようだ。石英の仕事は発射されない

マイquartz.properties

org.quartz.scheduler.instanceName = MyScheduler 
org.quartz.threadPool.threadCount = 3 
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore 

#=================================================== 
# Configure the Job Initialization Plugin 
#=================================================== 

org.quartz.plugin.triggerHistory.class: org.quartz.plugins.history.LoggingTriggerHistoryPlugin 
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 

マイquartz-job.xml

<?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.mpm.epick.enotify.EmailNotifier</job-class> 
     </job> 
     <trigger> 
      <cron> 
       <name>my-trigger</name> 
       <group>MYTRIGGER_GROUP</group> 
       <job-name>myjob</job-name> 
       <job-group>MYJOBGROUP</job-group> 
       <cron-expression>* * * * * ?</cron-expression> 
      </cron> 
     </trigger> 
    </schedule> 

</job-scheduling-data> 

私は私のweb.xmlで追加パーツ:

<!-- added by ck --> 
<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> 

<servlet> 
    <servlet-name>QuartzInitializer</servlet-name> 
    <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class> 
    <init-param> 
     <param-name>shutdown-on-unload</param-name> 
     <param-value>true</param-value> 
    </init-param> 
    <load-on-startup>2</load-on-startup> 
</servlet> 
<!-- end additions --> 

私が実行したいクラスファイル、 `EmailNotifier」(今はちょうどスタブの実装です):

package com.mpm.epick.enotify; 

import org.quartz.Job; 
import org.quartz.JobExecutionContext; 
import org.quartz.JobExecutionException; 

public class EmailNotifier implements Job { 

    public EmailNotifier() {} 

    public void execute(JobExecutionContext context) throws JobExecutionException { 
     System.out.println("Cron executing "); 
    } 

} 

それでは、私が観察すると、次のデバッグ線で示すように、私のスケジューラは、通常停止/起動することができますということです。

INFO: QuartzInitializer: Scheduler has been started... 
INFO: QuartzInitializer: Quartz Scheduler successful shutdown. 

しかし、私のコンソール上で私はすべてのデバッグ行は表示されません。私はログファイルを試しましたが、そこにもありませんでした。

私は自分の仕事を失うものがありますか?

答えて

0

これはあなたのcron式が奇妙なために起こっているのだろうかと思います。私はその意図が "* * * * *"であるかどうかはわかりません。毎秒発火させたい場合は、おそらく "0/1 * * * *?"を使用するべきです。 cron式の作成の詳細については、http://quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-06を参照してください。

関連する問題