`
pxjianke
  • 浏览: 21962 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

spring 3.2 和 quartz 2.1.7 集成

 
阅读更多

今天,做集成job。按着以前的步骤。心想应该直接可以运行吧,一运行。直接报错。

Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.JobDetailBean has interface org.quartz.JobDetail as super class

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)

at java.lang.ClassLoader.defineClass(ClassLoader.java:615)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)

at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1850)

at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:890)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1354)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)

at org.springframework.util.ClassUtils.forName(ClassUtils.java:260)

at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:416)

at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1290)

at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1261)

看了一下代码,发现JobDetail 变成接口了。在网上一搜发现用JobDetailFactoryBean类代替JobDetailBean类。

只好换了这个类。再次运行,还是抛出异常。异常如下: 

Caused by: java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super class

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)

at java.lang.ClassLoader.defineClass(ClassLoader.java:615)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)

at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1850)

at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:890)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1354)

at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)

at org.springframework.util.ClassUtils.forName(ClassUtils.java:260)

at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:416)

at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1290)

at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1261)

看了一下代码,发现CronTrigger  变成接口了。在网上一搜发现用CronTriggerFactoryBean类 代替CronTriggerBean 类。

只好换了这个类。 再次运行还是抛出异常。

Caused by: org.quartz.SchedulerException: Jobs added with no trigger must be durable.

at org.quartz.core.QuartzScheduler.addJob(QuartzScheduler.java:916)

at org.quartz.impl.StdScheduler.addJob(StdScheduler.java:269)

at org.springframework.scheduling.quartz.SchedulerAccessor.addJobToScheduler(SchedulerAccessor.java:342)

at org.springframework.scheduling.quartz.SchedulerAccessor.addTriggerToScheduler(SchedulerAccessor.java:365)

at org.springframework.scheduling.quartz.SchedulerAccessor.registerJobsAndTriggers(SchedulerAccessor.java:303)

at org.springframework.scheduling.quartz.SchedulerFactoryBean.afterPropertiesSet(SchedulerFactoryBean.java:511)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1547)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1485)

... 36 more

发现还需要在 org.springframework.scheduling.quartz.JobDetailFactoryBean bean中设置<property name="durability" value="true"></property> ,再次运行。终于成功了。

 

分享到:
评论

相关推荐

    spring3.2+quartz2+maven

    在这个项目中,Maven将被用来管理和构建包含Spring和Quartz的项目,确保所有依赖项正确且有效地被集成到应用中。通过阅读博文链接(已给出),你可以找到具体的集成步骤、配置示例以及可能遇到的问题和解决方案,...

    spring3.2源码包

    总而言之,Spring 3.2框架以其强大的依赖注入、面向切面编程、MVC支持、数据访问和集成能力,成为Java开发者的首选工具。其丰富的特性和改进使得开发者能够以更高效、更灵活的方式构建复杂的应用系统。通过深入理解...

    quartz-2.1.7

    这个"quartz-2.1.7"版本是Quartz库的一个重要发布,专注于提供可靠的定时任务管理和执行。在这个版本中,Quartz进行了多方面的优化和改进,以提高稳定性和性能。 Quartz的核心功能在于其强大的调度能力。它支持CRON...

    定时调度工具类quartz 2.1.7

    在2.1.7版本中,Quartz提供了丰富的API和功能,使得开发者可以方便地创建、管理和执行定时任务。以下是对Quartz 2.1.7版的详细解释: 一、Quartz简介 Quartz是一个完全由Java编写的作业调度库,它设计用于作为嵌入...

    spring2与quartz在Web整合

    Spring 2 和 Quartz 是两个在 Java Web 开发中非常重要的框架。Spring 是一个全面的开源应用框架,提供了依赖注入(DI)、面向切面编程(AOP)以及丰富的数据访问和事务管理功能。Quartz,则是一个功能强大的作业...

    quartz1.86+spring3.2测试实例

    在"quartz1.86+spring3.2测试实例"中,我们可以看到一个集成Quartz 1.86版本与Spring 3.2版本的项目。这两个框架的结合使得开发者能够方便地在Spring管理的上下文中配置和控制Quartz定时任务,提高了应用程序的灵活...

    spring3.2 各种jar

    在这个版本中,Spring 提供了对Java EE 6的支持,增强了AOP(面向切面编程)功能,以及提升了数据访问和集成的能力。下面,我们将深入探讨Spring 3.2中的关键知识点。 1. **模块化设计**:Spring 3.2 继续强化了其...

    quartz-2.1.7 官方jar包源码

    Quartz是Java领域一个广泛应用的开源任务调度框架,它的版本为2.1.7。这个官方jar包包含了Quartz的核心库,使得开发者可以方便地在自己的应用中集成定时任务的管理功能。Quartz的设计目标是提供一个灵活、可扩展的...

    Spring3.2.4 + Quartz2.2.0集成实例

    Spring3.2.4 + Quartz2.2.0集成实例 可参考http://blog.csdn.net/liangbinny/article/details/17284691

    quartz-2.1.7.zip

    Quartz 2.1.7 是一个广泛应用的开源任务调度框架,它允许开发者安排和执行周期性的任务。这个版本的 Quartz 提供了稳定的定时任务管理功能,能够与 Java 应用程序无缝集成,使得开发者无需关注底层调度细节,就能...

    springtask 和 quartz +ssh简单示例

    springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例

    spring 3.2 帮助文档

    6. **测试**:Spring提供了强大的测试支持,包括单元测试和集成测试。Spring TestContext框架可以帮助开发者配置和管理测试环境,而Mockito和EasyMock等库的集成则简化了模拟对象的创建。 7. **模块化**:Spring ...

    quartz 2.1.7

    quartz,2.1.7的jar包,看到其他资源最低三分才想上传的,但是居然最低也得选2分

    spring3-quartz1.x

    Spring3 和 Quartz1.8.6 集成是一个常见的任务,在Java企业级应用中用于实现定时任务。Spring 是一个强大的轻量级框架,而Quartz是一个开源的作业调度库,能够按照预定的时间执行任务。在Spring3中整合Quartz1.8.6,...

    spring2.0 使用 Quartz 必备包

    spring2.0 使用 Quartz 必备包 里面有: quartz-all-1.5.2.jar spring-support.jar 适合:SSH框架 spring2.0 strut2.0 hibernate3.2等

    spring3整合quartz1.8和spring3整合quartz2.2两个版本示例

    - **事务管理**:当 Job 需要在事务环境中执行时,需要确保 Spring 事务管理与 Quartz 的集成正确。 - **错误处理**:合理处理 Job 执行异常,避免影响整个 Scheduler 的运行。 - **资源释放**:应用关闭时,确保...

    quartz和spring-quartz

    Quartz和Spring-Quartz是两个在Java世界中广泛使用的定时任务管理框架。Quartz是一个开源的作业调度框架,允许应用程序定义和调度任务在特定时间执行。而Spring-Quartz则是Spring框架对Quartz的集成,它使得在Spring...

    Spring中的Quartz配置-Spring-定时器-java定时器.doc

    Quartz 可以与 Spring 框架集成,以实现任务的定时执行。 Spring 中的 Quartz 配置 在 Spring 中,Quartz 的配置主要通过 XML 文件来实现。我们可以在 Spring 的配置文件中定义 Quartz 的 bean,以便实现任务的...

    spring+quartz demo

    Spring 提供了与 Quartz 集成的模块,使得在 Spring 应用程序中使用 Quartz 更加便捷,包括 Job 实例的管理、触发器的配置以及对 Quartz Scheduler 的控制。 在这个 "spring+quartz demo" 中,我们可以学习到如何将...

Global site tag (gtag.js) - Google Analytics