解决:spring集成quartz,出现2次重复调用的问题

阅读更多

FROM:http://www.iteye.com/topic/173080

原因,是TOMCAT的配置文件server.xml配置不当引起的,

请看下面这段配置就是错误的:

appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 
 
 
 


正确的配置如下

appBase="" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 
 
 
 
 
这两段的区别是第二段去除了appBase="webapps"中的webapps变成了appBase="",因为web应用程序都是放在webapps这个目录下的,如果不把“webapps“去掉,这里会调用一次quartz的任务调度,在接下来的“

 

----------------------

补充:看了此贴确实解决了我的问题。但是我要补充一下:楼主所说的情况并没有完全描述清楚

现在问题分两种情况:

1:把工程发布到tomcat的webapps目录下:

这样执行定时任务是没有问题的。我们也不用更改tomcat的配置。我找了几个tomcat,发现appBase="webapps"是tomcat的默认配置。我们在本地测试时发现定时任务只会执行一次。而且对多个定时进行监控,一切正常。所以,如果此种情况,那么,恭喜你,你不要改配置文件。

2:在tomcat的conf\Catalina\localhost目录下放置配置文件,把配置文件指向tomcat的外部工程。

这样就会出现调用两次定时任务的情况。所以请按楼主所描述的那样修改tomcat的server.xml配置文件。

在此,还是要感谢楼主呀。要不然,累死也很难发现这个问题。

你可能感兴趣的:(解决:spring集成quartz,出现2次重复调用的问题)