2014-09-12 3 views
1

Quartz TRIGGERS tableQuartz Scheduler 작업이 한 번 실행 된 다음 오류가 발생합니다.

Quartz에서 이상한 동작이 있습니다. 쿼츠 데이터베이스 테이블을 지우고 Tomcat을 다시 시작한 후에 작업을 실행할 수있었습니다. 그리고 몇 번 완전히 실행되면 다음 오류가 발생합니다. 실마리가 떨어 졌는데, 아래 누구나이 문제가 있었나요? 나는 그 일이 다시 실행됩니다 "대기"하는 "ERROR"에서 몇 전체주기 후 TRIGGER_STATE 상태를 변경 한 경우

,이 같은 오류 스택에 "ERROR"를 변경 : 업데이트

자취.

[scheduler_QuartzSchedulerThread] 00:07:01,007 ERROR org.quartz.impl.jdbcjobstore.JobStoreSupport.triggerFired(JobStoreSupport.java:2908) - Error retrieving job, setting trigger state to ERROR. 
org.quartz.JobPersistenceException: Couldn't retrieve job because a required class was not found: com.mbww.scgid.social.facebook.RunFbPageHourlyJob [See nested exception: java.lang.ClassNotFoundException: com.social.facebook.RunFbPageHourlyJob] 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveJob(JobStoreSupport.java:1416) 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport.triggerFired(JobStoreSupport.java:2903) 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport$38.execute(JobStoreSupport.java:2871) 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3788) 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport.triggerFired(JobStoreSupport.java:2865) 
     at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:319) 
Caused by: java.lang.ClassNotFoundException: com.mbww.scgid.social.facebook.RunFbPageHourlyJob 
     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1483) 
     at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1329) 
     at org.springframework.scheduling.quartz.ResourceLoaderClassLoadHelper.loadClass(ResourceLoaderClassLoadHelper.java:75) 
     at org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectJobDetail(StdJDBCDelegate.java:894) 
     at org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveJob(JobStoreSupport.java:1404) 
    ... 5 more 

답변

0

놀랍게도, Google이이 사실을 토대로 여러 가지 이유가있을 수 있습니다.

내 경우에는 다른 팀원이 다른 이름으로 다른 동일한 응용 프로그램을 배포했기 때문에 실제로이 문제가 Quartz에 혼란을 야기하기 때문입니다. 클래스를로드하려고 할 때 클래스가없는 이전 응용 프로그램에서 클래스를로드하려고 시도하는 경우가 있습니다. 다음 오류 메이크업 감각 :

필요한 클래스를 찾을 수 없기 때문에 작업을 검색 할 수 없습니다 : com.mbww.scgid.social.facebook.RunFbPageHourlyJob

을에서 기존 응용 프로그램을 제거한 후 바람둥이, 그것 모두는 매끄럽고 잘 달린다.

1

이것은 아마도 클래스 경로를 정의하지 못한 클래스 경로 오류 일 것입니다. 클래스 패스에 문제가있어 앱에서 필요한 병과 클래스를 찾을 수 없습니다.

+1

하지만 DB 테이블을 지우고 바람둥이를 다시 시작한 후에는 정상적으로 실행됩니다. 문제는 단지 한 번만 실행된다는 것입니다. 위의 오류가 발생합니다. – Reusable

+0

해결책을 찾았습니까? –

관련 문제