`
erichua
  • 浏览: 510316 次
  • 性别: Icon_minigender_2
  • 来自: 远方
社区版块
存档分类
最新评论

spring读书笔记----Quartz Trigger JobStore出错解决

阅读更多

将Quartz的JOBDetail,Trigger保持到数据库的时候发现,系统报错

The job (DEFAULT.jobDetail) referenced by the trigger does not exist


经过测试发现,在不使用hibernate的时候只有spring的测试环境情况下一切正常。而放到工作环境的时候就发生错误。

因此怀疑是datasource的问题。查spring Quartz论坛上发现果然是这个问题。将quartz的datasource分开独立就全部解决了。其实也可以不独立将quartz的transaction也交给spring一同处理也可以的。

jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/quartz?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
jdbc.username=root
jdbc.password=huawei

quartz.jdbc.driver=com.mysql.jdbc.Driver
quartz.jdbc.url=jdbc:mysql://127.0.0.1:3306/quartz?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
quartz.jdbc.username=root
quartz.jdbc.password=huawei
 




applicationContext-datasource.xml

<!-- 事务管理器配置, Hibernate单数据源事务 -->
	<bean id="defaultTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>

	<!-- 另一个事务管理器, Jdbc单数据源事务 -->
	<bean id="quartzTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="quartzDataSource" />
	</bean>
 



applicationContext-quartz.xml

	<bean name="quartzScheduler"
		class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="dataSource" ref="quartzDataSource" />
		<property name="applicationContextSchedulerContextKey" value="applicationContext" />
		<property name="configLocation" value="classpath:schedule/quartz.properties" />
		<property name="autoStartup">
			<value>true</value>
		</property>

	</bean>
 


 

分享到:
评论
1 楼 fwertfgh87 2010-10-20  
网络直播课程,我去听了,感觉蛮好,貌似下次课程是MVC实现,http://www.51px.asia/px/jiangtang.aspx

相关推荐

Global site tag (gtag.js) - Google Analytics