Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 重新启动时石英/弹簧错误导致wildfly无法部署_Java_Spring_Quartz - Fatal编程技术网

Java 重新启动时石英/弹簧错误导致wildfly无法部署

Java 重新启动时石英/弹簧错误导致wildfly无法部署,java,spring,quartz,Java,Spring,Quartz,我有一个失败的作业,它的jobdata中有一个序列化对象。在应用程序更新期间,我更改了对象,因此我们得到了InvalidClassException。我知道这一点,所以我们今后会做得更好 但现在的问题是,尝试加载单个作业的异常会导致整个应用程序无法部署(wildfly),因为quartz无法存储触发器,spring也不会加载bean,因此应用程序不会重新部署 是否有人知道如何在配置中告诉quartz或spring忽略此异常,或者更好的是,如果加载时出错,告诉quartz忽略/删除作业 我正在粘贴

我有一个失败的作业,它的jobdata中有一个序列化对象。在应用程序更新期间,我更改了对象,因此我们得到了InvalidClassException。我知道这一点,所以我们今后会做得更好

但现在的问题是,尝试加载单个作业的异常会导致整个应用程序无法部署(wildfly),因为quartz无法存储触发器,spring也不会加载bean,因此应用程序不会重新部署

是否有人知道如何在配置中告诉quartz或spring忽略此异常,或者更好的是,如果加载时出错,告诉quartz忽略/删除作业

我正在粘贴stacktrace。只有一个错误的加载作业会导致spring无法启动bean,因此应用程序无法部署。当然,我可以手动从数据库中删除作业,但我将此代码提供给其他人,无法控制数据库

我们能想出什么办法来忽略/删除这个有问题的工作?我尝试用direct SQL更改缺火策略,但仍然给出了错误

谢谢大家!

Caused by: java.lang.RuntimeException: org.springframework.context.ApplicationContextException: Failed to start bean 'Scheduler'; nested exception is org.springframework.scheduling.SchedulingException: Could not start Quartz Scheduler; nested exception is org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't store trigger 'aDisable All1602959243757' for 'aDisable All1602959243757' job:com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1 [See nested exception: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1]]
    at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:254)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:96)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:78)
    ... 8 more
Caused by: org.springframework.context.ApplicationContextException: Failed to start bean 'Scheduler'; nested exception is org.springframework.scheduling.SchedulingException: Could not start Quartz Scheduler; nested exception is org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't store trigger 'aDisable All1602959243757' for 'aDisable All1602959243757' job:com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1 [See nested exception: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1]]
    at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:170)
    at org.springframework.context.support.DefaultLifecycleProcessor.access$1(DefaultLifecycleProcessor.java:154)
    at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:339)
    at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:143)
    at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:108)
    at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:926)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:467)
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:385)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)
    at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187)
    at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:217)
    at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:186)
    at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:42)
    at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
    at org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
    at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:252)
    ... 10 more
Caused by: org.springframework.scheduling.SchedulingException: Could not start Quartz Scheduler; nested exception is org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't store trigger 'aDisable All1602959243757' for 'aDisable All1602959243757' job:com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1 [See nested exception: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1]]
    at org.springframework.scheduling.quartz.SchedulerFactoryBean.start(SchedulerFactoryBean.java:715)
    at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:167)
    ... 30 more
Caused by: org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't store trigger 'aDisable All1602959243757' for 'aDisable All1602959243757' job:com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1 [See nested exception: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1]]
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.java:644)
    at org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:513)
    at org.quartz.impl.StdScheduler.start(StdScheduler.java:143)
    at org.springframework.scheduling.quartz.SchedulerFactoryBean.startScheduler(SchedulerFactoryBean.java:649)
    at org.springframework.scheduling.quartz.SchedulerFactoryBean.start(SchedulerFactoryBean.java:712)
    ... 31 more
Caused by: org.quartz.JobPersistenceException: Couldn't store trigger 'aDisable All1602959243757' for 'aDisable All1602959243757' job:com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1 [See nested exception: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1]
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.storeTrigger(JobStoreSupport.java:1270)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:1035)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:982)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverJobs(JobStoreSupport.java:859)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport$2.execute(JobStoreSupport.java:831)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport$41.execute(JobStoreSupport.java:3754)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3788)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3750)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverJobs(JobStoreSupport.java:827)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.java:642)
    ... 35 more
Caused by: java.io.InvalidClassException: com.myapp.application.business.ReviewRecord; local class incompatible: stream classdesc serialVersionUID = 3771195656244318424, local class serialVersionUID = 1
    at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:699)