You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by Christian Schlichtherle <ch...@schlichtherle.de> on 2013/08/27 13:39:19 UTC
TomEE+ fails to restart because of ClassNotFoundException
Hi,
I have an EAR which I can successfully deploy and undeploy on TomEE+ 1.5.2. When the EAR is deployed however, restarting the server fails with this exception:
Aug 27, 2013 1:33:30 PM org.apache.openejb.OpenEJB$Instance <init>
SEVERE: OpenEJB has encountered a fatal error and cannot be started: The Assembler encountered an unexpected error while attempting to build the container system.
java.lang.NoClassDefFoundError: net/java/trueupdate/manager/core/UpdateInstaller
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:411)
at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:179)
at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:73)
at org.apache.xbean.finder.archive.JarArchive.loadClass(JarArchive.java:84)
at org.apache.xbean.finder.archive.CompositeArchive.loadClass(CompositeArchive.java:58)
at org.apache.openejb.config.FinderFactory$DebugArchive.loadClass(FinderFactory.java:121)
at org.apache.xbean.finder.AnnotationFinder$ClassInfo.get(AnnotationFinder.java:1258)
at org.apache.xbean.finder.AnnotationFinder.findMetaAnnotatedFields(AnnotationFinder.java:727)
at org.apache.xbean.finder.AnnotationFinder.findMetaAnnotatedFields(AnnotationFinder.java:686)
at org.apache.openejb.config.FinderFactory$ModuleLimitedFinder.findMetaAnnotatedFields(FinderFactory.java:250)
at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.buildAnnotatedRefs(AnnotationDeployer.java:3511)
at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:2617)
at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:1726)
at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:344)
at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:379)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:884)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:726)
at org.apache.openejb.config.ConfigurationFactory.getOpenEjbConfiguration(ConfigurationFactory.java:485)
at org.apache.openejb.assembler.classic.Assembler.getOpenEjbConfiguration(Assembler.java:373)
at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:352)
at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:147)
at org.apache.openejb.OpenEJB.init(OpenEJB.java:292)
at org.apache.openejb.server.Server.init(Server.java:65)
at org.apache.openejb.server.Main.initServer(Main.java:154)
at org.apache.openejb.server.Main.main(Main.java:128)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.openejb.cli.MainImpl.main(MainImpl.java:148)
at org.apache.openejb.cli.Bootstrap.main(Bootstrap.java:105)
Caused by: java.lang.ClassNotFoundException: net.java.trueupdate.manager.core.UpdateInstaller
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 41 more
The UpdateInstaller class is a CDI bean which is located in lib/trueupdate-manager-plug-openejb-*.jar within the EAR. The application descriptor looks like this:
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd"
version="6">
<module>
...
</module>
<library-directory>lib</library-directory>
...
</application>
What am I doing wrong here?
Regards,
Christian Schlichtherle
Re: TomEE+ fails to restart because of ClassNotFoundException
Posted by Christian Schlichtherle <ch...@schlichtherle.de>.
Hi,
Am 27.08.2013 um 13:39 schrieb Christian Schlichtherle <ch...@schlichtherle.de>:
> The UpdateInstaller class is a CDI bean which is located in lib/trueupdate-manager-plug-openejb-*.jar within the EAR. The application descriptor looks like this:
Errata: Actually it's the interface for a CDI bean and is located in lib/trueupdate-manager-core-*.jar within the EAR.
Regards,
Christian Schlichtherle
Re: TomEE+ fails to restart because of ClassNotFoundException
Posted by Christian Schlichtherle <ch...@schlichtherle.de>.
Hi,
meanwhile I have tried to work around the issue by using a stateless session bean instead. However, it doesn't help at all. I still get ClassNotFoundException, this time for the super classes of my beans.
Regards,
Christian Schlichtherle
Am 27.08.2013 um 13:58 schrieb Romain Manni-Bucau <rm...@gmail.com>:
> What you gave seem correct so I just try to identify the issue. So
> basically you need to check against 1.5.1 and trunk to see if that's a
> regression, fixed bug, bug still in trunk.
Re: TomEE+ fails to restart because of ClassNotFoundException
Posted by Romain Manni-Bucau <rm...@gmail.com>.
What you gave seem correct so I just try to identify the issue. So
basically you need to check against 1.5.1 and trunk to see if that's a
regression, fixed bug, bug still in trunk.
*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*
2013/8/27 Christian Schlichtherle <ch...@schlichtherle.de>
> Hi,
>
> so you mean it's a bug? As said, I am using version 1.5.2. Well, the
> problem is I might not be able to convince my customer to use a snapshot
> release. Any other options? Maybe I should refactor to a stateless session
> bean?!
>
> Regards,
> Christian Schlichtherle
>
>
Re: TomEE+ fails to restart because of ClassNotFoundException
Posted by Christian Schlichtherle <ch...@schlichtherle.de>.
Hi,
so you mean it's a bug? As said, I am using version 1.5.2. Well, the problem is I might not be able to convince my customer to use a snapshot release. Any other options? Maybe I should refactor to a stateless session bean?!
Regards,
Christian Schlichtherle
Re: TomEE+ fails to restart because of ClassNotFoundException
Posted by Romain Manni-Bucau <rm...@gmail.com>.
Hi
Did you test with our snapshot?
Ear is better scanned than before.
Le 27 août 2013 13:40, "Christian Schlichtherle" <ch...@schlichtherle.de>
a écrit :
> Hi,
>
> I have an EAR which I can successfully deploy and undeploy on TomEE+
> 1.5.2. When the EAR is deployed however, restarting the server fails with
> this exception:
>
> Aug 27, 2013 1:33:30 PM org.apache.openejb.OpenEJB$Instance <init>
> SEVERE: OpenEJB has encountered a fatal error and cannot be started: The
> Assembler encountered an unexpected error while attempting to build the
> container system.
> java.lang.NoClassDefFoundError:
> net/java/trueupdate/manager/core/UpdateInstaller
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
> at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:411)
> at
> org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:179)
> at
> org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:73)
> at
> org.apache.xbean.finder.archive.JarArchive.loadClass(JarArchive.java:84)
> at
> org.apache.xbean.finder.archive.CompositeArchive.loadClass(CompositeArchive.java:58)
> at
> org.apache.openejb.config.FinderFactory$DebugArchive.loadClass(FinderFactory.java:121)
> at
> org.apache.xbean.finder.AnnotationFinder$ClassInfo.get(AnnotationFinder.java:1258)
> at
> org.apache.xbean.finder.AnnotationFinder.findMetaAnnotatedFields(AnnotationFinder.java:727)
> at
> org.apache.xbean.finder.AnnotationFinder.findMetaAnnotatedFields(AnnotationFinder.java:686)
> at
> org.apache.openejb.config.FinderFactory$ModuleLimitedFinder.findMetaAnnotatedFields(FinderFactory.java:250)
> at
> org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.buildAnnotatedRefs(AnnotationDeployer.java:3511)
> at
> org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:2617)
> at
> org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:1726)
> at
> org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:344)
> at
> org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:379)
> at
> org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:884)
> at
> org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:726)
> at
> org.apache.openejb.config.ConfigurationFactory.getOpenEjbConfiguration(ConfigurationFactory.java:485)
> at
> org.apache.openejb.assembler.classic.Assembler.getOpenEjbConfiguration(Assembler.java:373)
> at
> org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:352)
> at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:147)
> at org.apache.openejb.OpenEJB.init(OpenEJB.java:292)
> at org.apache.openejb.server.Server.init(Server.java:65)
> at org.apache.openejb.server.Main.initServer(Main.java:154)
> at org.apache.openejb.server.Main.main(Main.java:128)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:606)
> at org.apache.openejb.cli.MainImpl.main(MainImpl.java:148)
> at org.apache.openejb.cli.Bootstrap.main(Bootstrap.java:105)
> Caused by: java.lang.ClassNotFoundException:
> net.java.trueupdate.manager.core.UpdateInstaller
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> ... 41 more
>
> The UpdateInstaller class is a CDI bean which is located in
> lib/trueupdate-manager-plug-openejb-*.jar within the EAR. The application
> descriptor looks like this:
>
> <application xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/application_6.xsd"
> version="6">
> <module>
> ...
> </module>
> <library-directory>lib</library-directory>
> ...
> </application>
>
> What am I doing wrong here?
>
> Regards,
> Christian Schlichtherle
>
>