Quartz:org.quartz.SchedulerConfigException:スレッド数は> 0でなければなりません
Quartz 2を使って作業すると、プロジェクトの実行中にエラーメッセージが表示されますか?
org.quartz.SchedulerConfigException: Thread count must be > 0 at org.quartz.simpl.SimpleThreadPool.initialize(SimpleThreadPool.java:245) at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1255) at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1484) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:680)
解決策
あなたは “quartz.properties”ファイルを定義し、デフォルトのQuartzのスレッドカウント値を上書きします。
これを修正するには、次の操作を実行します。
-
あなたの “quartz.properties”を削除してください. 通常はこのファイルが必要です
事前設定のみ。通常、単純なプロジェクトではこれは必要ありません。
-
`org.quartz.threadPool.threadCount`値を適切に定義しました.
File:quartz.properties
– 作業サンプル。
org.quartz.scheduler.instanceName = MyScheduler org.quartz.threadPool.threadCount = 3 org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore org.quartz.plugin.jobInitializer.class =org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin org.quartz.plugin.jobInitializer.fileNames = quartz-config.xml org.quartz.plugin.jobInitializer.failOnFileNotFound = true
参考文献
構成リファレンス]。
JSF 2 Quartzの例