当前位置: 首页 > 知识库问答 >
问题:

当在java中集成石英配置xml和Spring时,我得到了这个异常

黎苑博
2023-03-14

我已经在数据库上创建了所需的qurtz表,并正确映射了quartz xml的所有bean引用,但仍然得到了异常。我的夸茨配置。xml包含:-

<bean name="scheduler"
        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="jobFactory">
            <bean class="org.springframework.scheduling.quartz.SpringBeanJobFactory" />
        </property>
        <property name="dataSource" ref="dataSource" />
        <property name="transactionManager">
            <ref bean="transactionManager" />
        </property>
        <property name="quartzProperties">
            <props>
                <prop key="org.quartz.jobStore.misfireThreshold">6000000</prop>
                <prop key="org.quartz.jobStore.driverDelegateClass">org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
                </prop>
                <prop key="org.quartz.jobStore.tablePrefix">qrtz_</prop>
                <prop key="org.quartz.jobStore.isClustered">true</prop>
                <prop key="org.quartz.jobStore.clusterCheckinInterval">20000</prop>
                <!-- <prop key="org.quartz.scheduler.instanceName">Scheduler</prop> -->
                <prop key="org.quartz.scheduler.instanceName">SgsClusteredScheduler</prop>
                <prop key="org.quartz.scheduler.instanceId">AUTO</prop>
                <prop key="org.quartz.scheduler.jmx.export">true</prop>
            </props>
        </property>
        <property name="applicationContextSchedulerContextKey" value="applicationContext" />
        <property name="waitForJobsToCompleteOnShutdown" value="true" />
        <property name="overwriteExistingJobs" value="true" />
        <property name="triggers">

    <list>      

    <ref bean="companySaleUploaderJobTrigger" />

 </list>
</property>


    </bean>

例外

组织。springframework。豆。工厂BeanCreationException:创建名为“scheduler”的bean时出错,该bean在ServletContext资源[/WEB-INF/config/quartzConfig.xml]中定义:调用init方法失败;嵌套的异常是org。石英JobPersistenceException:无法存储触发器:org。springframework。网状物上下文支持XmlWebApplicationContext[参见嵌套异常:java.io.NotSerializableException:org.springframework.web.context.support.XmlWebApplicationContext]位于org。springframework。豆。工厂支持AbstractAutoWireAbleBeanFactory。org上的initializeBean(AbstractAutowireCapableBeanFactory.java:1455)。springframework。豆。工厂支持AbstractAutoWireAbleBeanFactory。org上的doCreateBean(AbstractAutowireCapableBeanFactory.java:519)。springframework。豆。工厂支持AbstractAutoWireAbleBeanFactory。org上的createBean(AbstractAutowireCapableBeanFactory.java:456)。springframework。豆。工厂支持AbstractBeanFactory 1美元。org上的getObject(AbstractBeanFactory.java:294)。springframework。豆。工厂支持DefaultSingletonBeanRegistry。org上的getSingleton(DefaultSingletonBeanRegistry.java:225)。springframework。豆。工厂支持抽象工厂。doGetBean(AbstractBeanFactory.java:291)位于org。springframework。豆。工厂支持抽象工厂。org上的getBean(AbstractBeanFactory.java:193)。springframework。豆。工厂支持DefaultListableBeanFactory。在org上预实例化Singleton(DefaultListableBeanFactory.java:591)。springframework。上下文支持AbstractApplicationContext。在org上完成BeanFactoryInitialization(AbstractApplicationContext.java:918)。springframework。上下文支持AbstractApplicationContext。在org上刷新(AbstractApplicationContext.java:469)。springframework。网状物上下文ContextLoader。在org上配置和刷新WebApplicationContext(ContextLoader.java:383)。springframework。网状物上下文ContextLoader。initWebApplicationContext(ContextLoader.java:283)位于org。springframework。网状物上下文ContextLoaderListener。contextInitialized(ContextLoaderListener.java:111)位于org。阿帕奇。卡塔琳娜。果心标准语境。listenerStart(StandardContext.java:4206)位于org。阿帕奇。卡塔琳娜。果心标准语境。从org开始(StandardContext.java:4705)。阿帕奇。卡塔琳娜。果心集装箱基地。在org上启动(ContainerBase.java:1057)。阿帕奇。卡塔琳娜。果心标准主持人。在org上启动(StandardHost.java:840)。阿帕奇。卡塔琳娜。果心集装箱基地。在org上启动(ContainerBase.java:1057)。阿帕奇。卡塔琳娜。果心标准引擎。在org上启动(StandardEngine.java:463)。阿帕奇。卡塔琳娜。果心标准服务。在org上启动(StandardService.java:525)。阿帕奇。卡塔琳娜。果心标准服务器。在org上启动(StandardServer.java:754)。阿帕奇。卡塔琳娜。创业。卡塔琳娜。从太阳开始(Catalina.java:595)。反映NativeMethodAccessorImpl。在sun上调用0(本机方法)。反映NativeMethodAccessorImpl。在sun上调用(未知源)。反映DelegatingMethodAccessorImpl。在java上调用(未知源代码)。朗,反思一下。方法在组织中调用(未知源)。阿帕奇。卡塔琳娜。创业。独自创立从org开始(Bootstrap.java:289)。阿帕奇。卡塔琳娜。创业。独自创立main(Bootstrap.java:414)由:org引起。石英JobPersistenceException:无法存储触发器:org。springframework。网状物上下文支持XmlWebApplicationContext[参见嵌套异常:java.io.NotSerializableException:org.springframework.web.context.support.XmlWebApplicationContext]

共有1个答案

巴英韶
2023-03-14

由于JAR冲突而发生错误。现在我的问题是用两个罐子来解决。

当我使用带quartz-all-1.8.6的spring-3.1.2释放罐时。然后我的代码运行良好,现在使用oracle数据库触发石英触发器。

Quartzconfig.xml

<bean name="scheduler"
        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="jobFactory">
            <bean class="org.springframework.scheduling.quartz.SpringBeanJobFactory" />
        </property>
        <property name="dataSource" ref="dataSource" />
        <property name="transactionManager">
            <ref bean="transactionManager" />
        </property>
        <property name="quartzProperties">          
                <props>
                <prop key="org.quartz.jobStore.misfireThreshold">6000000</prop>
                <prop key="org.quartz.jobStore.class">org.quartz.impl.jdbcjobstore.JobStoreTX</prop>         
                <prop key="org.quartz.jobStore.driverDelegateClass">org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
                </prop>
                <prop key="org.quartz.jobStore.tablePrefix">qrtz_</prop>
                <prop key="org.quartz.jobStore.isClustered">true</prop>
                <prop key="org.quartz.jobStore.clusterCheckinInterval">20000</prop>
                <!-- <prop key="org.quartz.scheduler.instanceName">Scheduler</prop> -->
                <prop key="org.quartz.scheduler.instanceName">SgsClusteredScheduler</prop>
                <prop key="org.quartz.scheduler.instanceId">AUTO</prop>
                <prop key="org.quartz.scheduler.jmx.export">true</prop>
                <prop key="org.quartz.scheduler.skipUpdateCheck">true </prop>
            </props>

</property>
        <property name="applicationContextSchedulerContextKey" value="applicationContext" />
        <property name="waitForJobsToCompleteOnShutdown" value="true" />
        <property name="overwriteExistingJobs" value="true" />
        <property name="triggers">

    <list>      
    <ref bean="Emailschedule trigger" />

 </list>
</property>


    </bean>
 类似资料:
  • 我正在开发Spring MVC Web应用程序,它使用JDBC Quartz Scheduler来执行作业。这个Web应用程序有多个服务,每个服务都打包为jar并具有关联的作业。我在Web项目中有一个石英配置,在该配置下我为作业、触发器和调度程序创建了bean。在调度程序配置下,我指定了触发器列表。当我们开始我们的项目时,这很好。随着我们开始添加功能,作业数量增加,现在大约有100个。维护这个文件

  • 我尝试在Quartz调度程序上创建集成测试。 我有两个表:事件和任务。调度程序通过cron触发器按事件创建任务。 首先,我得到例外: 无法初始化代理-没有会话 我在Spring Data JPA中使用这个答案-“无法初始化代理-没有会话”-方法标记为事务性,并添加到我的测试配置。所以现在我又遇到了另一个问题——我的测试有时是正确的,但更常见的是它失败了,因为它只创建了一个任务。 由Quartz执行

  • 我在下面写了Java Config Code,但用于注销和. antMatcher("/约会/"). access("hasRole('USER')")和antMatcher("/计划/"). access("hasRole('ADMIN')") URL是否总是转到/login/failure?错误=true 什么是合适的java cofig代码。请帮助...... }

  • 我正在尝试使用flutter构建一个应用程序。当我尝试运行此推荐“flutter build appbundle”时,我收到以下错误: 失败:构建失败,但有例外。 > 其中:构建文件'F:\azabaza_app\myapp\android\app\build.gradle'行:28 错误:评估项目“app”时出现问题。 无法为FlutterExtension类型的扩展“flutter”获取未知属

  • 我看过很多关于如何使用硒的示例脚本 switch_to.window 这是一个关于我所学的示例脚本,根本不起作用: 我得到了错误消息: InvalidArgumentException:预期“handle”为字符串,但得到了[object Undefined]未定义 很明显,我也厌倦了同样结果的普通网页。 有人有同样的问题吗?

  • 我修改了tomcat(catalina.sh)的init脚本--将JAVA_OPTS设置为:JAVA_OPTS=“-server-xms8g-xmx8g-xmn3g-xss128k-dj ava.awt.headless=true”。然后我启动了tomcat,它的日志出现了这个Spring错误: “2012-08-10 16:40:20.697错误上下文初始化失败java.lang.noClass