[jboss-user] [Installation, Configuration & DEPLOYMENT] - MBean configuration - ClassLoader issue
tprime
do-not-reply at jboss.com
Mon Jan 14 09:43:40 EST 2008
I having problem using configuring Quartz MBean. Specifically having problem with JBoss Class Loading.
Enviorment:
OS: Linux (Ubuntu 7.10)
Jboss: 4.0.4 GA
Java: 1.5
I have very simple ear with following content:
| myapp.ear
| |--------- META-INF
| | |------------- application.xml (reference modules some.jar and other.jar)
| | |------------- jboss-app.xml (reference to service archive myquartz.sar)
| |
| |--------- some.jar
| | |------------- my.test.SomeJob1 (Does not use any external class)
| | |------------- my.test.SomeJob2 (references/uses my.test.OtherBean)
| |
| |--------- other.jar
| | |------------- my.test.OtherBean
| |
| |--------- myquartz.sar
| |--------- META-INF
| |------------- jboss-service.xml (initialize Quartz MBean)
|
If i use only my.test.SomeJob1 which does not reference any external class then everything works great.
(Quartz Scheduler is properly started and jobs get trigger properly too)
But if i use my.test.SomeJob2 which uses an external class in Other.jar(in the same ear)
It throws following ClassLoader complain it can not find my.test.OtherBean.
| [main] - 01/14/2008 09:09:55 [QuartzService] ERROR: org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.JobPersistenceException: Couldn't recover jobs: No ClassLoaders found for: com.illuminatics.accounting.organization.Organization [See nested exception: java.lang.ClassNotFoundException: No ClassLoaders found for: my.test.OtherBean]]
| at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.j ava:512)
| at org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:396)
| at org.quartz.impl.StdScheduler.start(StdScheduler.java:147)
| at org.quartz.ee.jmx.jboss.QuartzService.startService(QuartzService.java:239)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.jav a:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport .java:245)
| at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.ja va:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:15 5)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:9 78)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
| at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
| .
| .
| .
| * Nested Exception (Underlying Cause) ---------------
| org.quartz.JobPersistenceException: Couldn't recover jobs: No ClassLoaders found for: com.illuminatics.accounting.organization.Organization [See nested exception: java.lang.ClassNotFoundException: No ClassLoaders found for: com.illuminatics.accounting.organization.Organization]
| at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverJobs(JobStoreSupport.java:7 17)
| at org.quartz.impl.jdbcjobstore.JobStoreCMT.recoverJobs(JobStoreCMT.java:186)
| at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.j ava:510)
| at org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:396)
| at org.quartz.impl.StdScheduler.start(StdScheduler.java:147)
| at org.quartz.ee.jmx.jboss.QuartzService.startService(QuartzService.java:239)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.jav a:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport .java:245)
| at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.ja va:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:15 5)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:9 78)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
|
Why can Jboss find the the my.test.OtherBean? Does any one have any suggestion to resolve this issue?
i have been searching for the solution for good time now.
pike
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4119659#4119659
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4119659
More information about the jboss-user
mailing list