首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Spring配置Quartz发生错误

2012-09-23 
Spring配置Quartz发生异常Quartz是一个很好的定时任务调度组件,关于Quartz的基本概念,请参阅http://www.op

Spring配置Quartz发生异常
Quartz是一个很好的定时任务调度组件,关于Quartz的基本概念,请参阅http://www.opensymphony.com/quartz。spring将Quartz很好的集成在了一起。关于spring中Quartz的用法,网上很多,这里就不在叙述,大家可以查阅相关资料,这里主要描述在开发中遇到的一个问题。这是我spring的配置文件:<bean ? id="LoadDists" ? ? />
</list>
</property>
<property name="quartzProperties">
<props>
<prop key="org.quartz.jobStore.class">
org.quartz.simpl.RAMJobStore
</prop>
</props>
</property>
</bean>

可错误依旧。

?

我用的是spring+hibernate的框架,单独使用Quartz或hibernate都运行得很好。和在一起就报错。

研究了半天,看了SchedulerFactoryBean的源代码,终于找到了问题。原来问题出在我定义的datasource:

<bean id="dataSource" value="${jdbc.jndiName}" />??
<bean>

SchedulerFactoryBean中的数据源属性名也叫datasource,我将整个系统的数据源名称定义为dataSource后,Quartz就将dataSource注入,同时认为应该从数据库中查询任务。所以出现上面的错误。

将<bean id="dataSource" value="${jdbc.jndiName}" />??
<bean>

改为

<bean id="ds1" value="${jdbc.jndiName}" />??
<bean>

后,问题解决。

这应该是Quartz的一个小小bug,希望它的新版本能解决这个问题。

?

此文转载自:东华_励志人生的BLOG

http://blog.sina.com.cn/s/blog_5537a55301000b8b.html

热点排行