0 Replies Latest reply on Sep 3, 2007 3:30 PM by goldrimtang

    ClassNotFoundException when using annotations

    goldrimtang

      Hello forums,

      I am porting an application form Jboss 3.2.6 to 4.2.1. After some minor tweaks, the application runs well. Then, I want to start taking advantage of new features, such as the usage of annotations instead of xdolcet.

      I started with just one stateless session bean, removing the xdoclet comments and replacing them by @Stateless, etc.

      The next deploymnet I get :
      Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: com.xxx.xxx.xxx.MyClass[]
      (see the complete stack trace below).

      The class not being found has nothing to do with the statless session bean being converted. Even more, if I just remove the stateless session bean from the jar file, it goes back to deploying everything well.

      The application is an EAR file, with a WAR file, a JAR file from common classes, and a JAR file with the EJBs (three total). Again, if left alone without any annotated classes, it works well.

      This looks like a classloading problem. After much searching and wiki-reading, I didn't go any further. My question is, what impact does it have in the class loading process to have one class annotated? Is is OK to mix old-style ejbs (2.x) with new ones (EJB 3)?.

      Thanks very much for any help or clue on how to solve this!!

      More on the stack trace:

      2007-09-03 12:15:09,952 INFO [org.jboss.deployment.EARDeployer] Init J2EE application: file:/U:/jb/1-1/jboss-4.2.1.GA/server/default/deploy/myApp.ear
      
      2007-09-03 12:15:16,749 WARN [org.jboss.system.ServiceController] Problem creating service jboss.j2ee:service=EJB3,module=myApp.jar
      
      java.lang.RuntimeException: Unable to create annotation from method/field setAgeingSteps for EJB BillingProcessSession
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.addAnnotations(Ejb3DescriptorHandler.java:1979)
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.addTransactionAnnotations(Ejb3DescriptorHandler.java:1011)
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.addDescriptorAnnotations(Ejb3DescriptorHandler.java:716)
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.addDescriptorAnnotations(Ejb3DescriptorHandler.java:708)
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.getStatelessContainer(Ejb3DescriptorHandler.java:396)
      
       at org.jboss.ejb3.Ejb3AnnotationHandler.getContainers(Ejb3AnnotationHandler.java:145)
      
       at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:486)
      
       at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:442)
      
       at org.jboss.ejb3.Ejb3Deployment.deployUrl(Ejb3Deployment.java:423)
      
       at org.jboss.ejb3.Ejb3Deployment.deploy(Ejb3Deployment.java:384)
      
       at org.jboss.ejb3.Ejb3Deployment.create(Ejb3Deployment.java:327)
      
       at org.jboss.ejb3.Ejb3Module.createService(Ejb3Module.java:77)
      
       at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:260)
      
       at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:243)
      
       at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       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:978)
      
       at $Proxy0.create(Unknown Source)
      
       at org.jboss.system.ServiceController.create(ServiceController.java:330)
      
       at org.jboss.system.ServiceController.create(ServiceController.java:273)
      
       at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       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.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
      
       at $Proxy33.create(Unknown Source)
      
       at org.jboss.ejb3.EJB3Deployer.create(EJB3Deployer.java:492)
      
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      
       at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
      
       at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
      
       at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
      
       at org.jboss.wsf.container.jboss42.DeployerInterceptor.create(DeployerInterceptor.java:76)
      
       at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.create(SubDeployerInterceptorSupport.java:180)
      
       at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:91)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
      
       at $Proxy34.create(Unknown Source)
      
       at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
      
       at org.jboss.deployment.MainDeployer.create(MainDeployer.java:959)
      
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
      
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
      
       at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      
       at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
      
       at $Proxy9.deploy(Unknown Source)
      
       at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
      
       at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
      
       at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
      
       at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336)
      
       at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
      
       at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
      
       at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       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:978)
      
       at $Proxy0.start(Unknown Source)
      
       at org.jboss.system.ServiceController.start(ServiceController.java:417)
      
       at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       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.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
      
       at $Proxy4.start(Unknown Source)
      
       at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
      
       at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
      
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
      
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
      
       at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766)
      
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
       at java.lang.reflect.Method.invoke(Method.java:597)
      
       at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
       at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      
       at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
      
       at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
      
       at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      
       at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      
       at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
      
       at $Proxy5.deploy(Unknown Source)
      
       at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
      
       at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
      
       at org.jboss.Main.boot(Main.java:200)
      
       at org.jboss.Main$1.run(Main.java:508)
      
       at java.lang.Thread.run(Thread.java:619)
      
      Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: com.xxx.yyy.server.process.MyClass[]
      
       at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:306)
      
       at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:514)
      
       at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:408)
      
       at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
      
       at org.jboss.ejb3.Ejb3DescriptorHandler.addAnnotations(Ejb3DescriptorHandler.java:1963)
      
       ... 123 more