You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Quartz stores jobs in the database with Java class information. The problem
occurs if the Java code changes and the class information in the database refer
to deleted and/or renamed classes.
What steps will reproduce the problem?
1. Configure an unknown class in the Jobs table of Quartz
2. Startup the server with JavaMelody
What is the expected output? What do you see instead?
I would assume that these jobs are ignored by the frontend or listed with an
error status. Instead the frontend shows a "HTTP status 500" with the following
root cause (Stack trace is attached below.
What version of the product are you using? On what application server, JDK,
operating system?
JavaMelody 1.19.0 on JBoss 4, Linux
I hope that this helps to improve this wonderful tool!
Thanks in advance!
Christian
Stack trace:
org.quartz.JobPersistenceException: Couldn't retrieve job because a required
class was not found: xx.xy.AnUnknownClass [See nested exception:
java.lang.ClassNotFoundException: xx.xy.AnUnknownClass]
org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveJob(JobStoreSupport.java:1392)
org.quartz.impl.jdbcjobstore.JobStoreSupport$7.execute(JobStoreSupport.java:1372)
org.quartz.impl.jdbcjobstore.JobStoreCMT.executeInLock(JobStoreCMT.java:244)
org.quartz.impl.jdbcjobstore.JobStoreSupport.executeWithoutLock(JobStoreSupport.java:3665)
org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveJob(JobStoreSupport.java:1369)
org.quartz.core.QuartzScheduler.getJobDetail(QuartzScheduler.java:1318)
org.quartz.impl.StdScheduler.getJobDetail(StdScheduler.java:561)
net.bull.javamelody.JobInformations.getAllJobsOfScheduler(JobInformations.java:145)
net.bull.javamelody.JobInformations.buildJobInformationsList(JobInformations.java:124)
net.bull.javamelody.JavaInformations.<init>(JavaInformations.java:184)
net.bull.javamelody.MonitoringFilter.doMonitoring(MonitoringFilter.java:538)
net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:395)
bflexx.webui.filter.DefaultServletFilter.doFilter(DefaultServletFilter.java:36)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
Original issue reported on code.google.com by mobil...@gmail.com on 5 Oct 2010 at 9:20
The text was updated successfully, but these errors were encountered:
I understand the problem.
It seems a bit strange to me to keep in the database jobs with classes which
don't exist any more, but the report should be displayed anyway.
Those invalid jobs can't be displayed with an error status, so the invalid jobs
will be ignored to fix the issue and they will not be displayed in the report
(the exception above will be logged at "debug" level for each of those jobs).
I have committed the fix in trunk (revision 1304) for the next release (1.21).
I have made a new build, from the current trunk including the fix, which is
available at:
http://javamelody.googlecode.com/files/javamelody-20101006.jar
Original comment by evernat@free.fr on 6 Oct 2010 at 3:00
Original issue reported on code.google.com by
mobil...@gmail.com
on 5 Oct 2010 at 9:20The text was updated successfully, but these errors were encountered: