我有一个带有Quartz-Scheduler的Java web应用程序,每天触发一次。但问题是,他一直在一次多次请求相同的触发器,有时它会说有多个id "cronTrigger“的实例。
Caused by: org.xml.sax.SAXParseException; lineNumber: 50; columnNumber: 90; cvc-id.2: There are multiple occurrences of ID value 'cronTrigger'.我的意思是:
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....而不是这样:
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....
Trigger started .....等。
我的applicationContext.xml看起来像这样:
<bean name="schedulerTask" class="com.myapp.struts.triggers.SchedulerTask"></bean>
<bean id="schedulerJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="schedulerTask" />
<property name="targetMethod" value="execute" />
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="schedulerJob" />
<property name="cronExpression" value="0/10 * * * * ?"/> //for test: scheduler is triggered each 10 seconds
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
</list>
</property>
</bean>我找不到问题是从哪里来的,也许你们可以帮我。
发布于 2012-01-23 15:59:11
我已经添加了新的applicationContext-scheduler.xml文件,然后在web.xml中添加为:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml,
/WEB-INF/applicationContext-scheduler.xml
</param-value>
</context-param>唯一有效的解决方案。
https://stackoverflow.com/questions/8926538
复制相似问题