tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <ch...@christopherschultz.net>
Subject Re: Spurious Problem starting Tomcat7 (garbled class names)
Date Thu, 06 Nov 2014 21:01:35 GMT
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Matthias,

On 11/6/14 11:33 AM, Matthias Keller wrote:
> We have a spurious problem which still happened quite a few times
> but is not really reproducible since it only occurs on every 1000.
> startup or something. The effect is that tomcat scans all class
> files but somewhere something goes wrong and it tries to load an
> invalid class name which is often a combination of two effectively
> existing class names. It is confimed to occur on 7.0.55 with Java7,
> however it's likely not to be bound to a single version as we've
> seen it at different sites lately.
> 
> example with to garbled classes: (3.class being the first, which
> must come from SomeClass$3.class and the second one being something
> awefully beautiful: 
> ConfigEdiAtourtAhpepnltiiccaattiioonn$SAtpaptlei$cIadteinotniCfo^@^@iigeLro.acdlLaissstener.class
>
> 
)

Haw haw haw. I'm sorry, but I LOL'd when I saw this. Sorry to laugh at
your pain, but that's kind of funny.

> INFO: Starting Servlet Engine: Apache Tomcat/7.0.55 Oct 28, 2014
> 10:13:15 AM org.apache.catalina.startup.HostConfig deployWAR INFO:
> Deploying web application archive
> /opt/tomcat/webapps/test-admin.war Oct 28, 2014 10:13:22 AM
> org.apache.catalina.startup.ContextConfig processAnnotationsJndi 
> SEVERE: Unable to process resource element
> [jndi:/localhost/test-admin/WEB-INF/classes/ch/something/*3.class*]
> for annotations java.io.FileNotFoundException:
> jndi:/localhost/test-admin/WEB-INF/classes/ch/something/*3.class* 
> at
> org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:389)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1994)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1902)
>
> 
at
org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1298)
> at
> org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876)
>
> 
at
org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374)
> at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>
> 
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
>
> 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
>
> 
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
>
> 
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
> at
> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
>
> 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
> at
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
> at java.util.concurrent.FutureTask.run(FutureTask.java:138) at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>
> 
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
> at java.lang.Thread.run(Thread.java:662) Oct 28, 2014 10:13:22 AM
> org.apache.catalina.startup.ContextConfig processAnnotationsJndi 
> SEVERE: Unable to process resource element
> [jndi:/localhost/test-admin/WEB-INF/classes/ch/something/*ConfigEdiAtourtAhpepnltiiccaattiioonn$SAtpaptlei$cIadteinotniCfo^@^@iigeLro.acdlLaissstener.class*]
> for annotations java.io.FileNotFoundException:
> jndi:/localhost/test-admin/WEB-INF/classes/ch/something/ConfigEdiAtourtAhpepnltiiccaattiioonn$SAtpaptlei$cIadteinotniCfo^@^@iigeLro.acdlLaissstener.class
>
> 
at
org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:389)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1994)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1902)
> at
> org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1298)
>
> 
at
org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876)
> at
> org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374)
>
> 
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
> at
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
>
> 
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
> at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>
> 
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
>
> 
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
> at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
>
> 
at
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
>
> 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138) at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>
> 
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
> at java.lang.Thread.run(Thread.java:662)
> 
> Another example where a class named
> '*f*v*i**g*i*u*e*r*w*ations*.class' is tried to be loaded. The name
> denotes a non existing class and often appears to be two strings
> somehow combined together. In this name, I can spot
> SelectablePluginConfigurations (from the bold letters) and the
> rest gives 'view' which isn't itself a something in those classes
> but is very likely to occur somewhere else.

Have you looked at the log file with a hex editor to see if there are
some weirdo characters in there that you can't see/select in a text
editor or viewer?

> Information: Deploying web application archive
> /Users/user/.../webapps/external-admin.war Aug 28, 2014 9:43:57 AM
> org.apache.catalina.startup.ContextConfig processAnnotationsJndi 
> Schwerwiegend: Unable to process resource element
> [jndi:/localhost/external-admin/WEB-INF/classes/ch/some/package/*fvigiuerwations.class*]
> for annotations java.io.FileNotFoundException:
> jndi:/localhost/external-admin/WEB-INF/classes/ch/some/package/fvigiuerwations.class
>
> 
at
org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:389)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1994)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
>
> 
at
org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(ContextConfig.java:1986)
> at
> org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1902)
>
> 
at
org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1298)
> at
> org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876)
>
> 
at
org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374)
> at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>
> 
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)
>
> 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
>
> 
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
>
> 
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
> at
> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
>
> 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262) at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>
> 
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:744)
> 
> 
> Anyone seen something like this before? I'm not sure where to
> start looking for this problem.....?!

If you can afford the downtime, I'd run memtest86+ (or
architecture-appropriate analog) against that machine. It's possible
that your hardware is dying.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCAAGBQJUW+GvAAoJEBzwKT+lPKRY9XkP/1dxgrdQSYGX0IP62iZQ2x08
hJjY8hFpdbpVnx0mb+T3D1JrmKbZSHz/nusyp7qQaO9i46/Q7VrmtRRKMDyYS0p2
Picgo3ihDxhy197aYAcVh7mjhkzii7AlgtEDwp2ysaaaMntuEvE13s1zEX9OjC9h
Mu7q7h0fr20uznY2HmrcAtP5XH9CGF6eBm2pHogSES0aPUPI63bngQ7BHVgY1SuZ
ypWH0kS+eKVD0gowdnq3Cr3iZexESLu3fFBMsoF1NS+cMixz7gV7c7Wy3R7YfFuH
xN5i7YEhqsnaXY/woy503jk2ozfrKJ69VQMnyf/CgSJTJjRs0ceOcqc9gnh43rTl
t0Fv9W51mxkN1jE9jK5PTnMQH5klGTXq/EPawjEqkOIVZBKmjtVJUPSxAFl1lNAH
7qjmm9r0gmwF3HhVPS0kj8lAYbFJN3KMaEBjqhDT2lCsddpS3t8SZuw6HVnpOWax
q7xAleft4zEA8fbetZIELP8VuVmKNVLwL+zORYNxiqQv8x1aErSLdi/AsNszWex4
x6BNJgoYTxxzJQSWdVMaxoYno7s10KLx4Lmm9OIwndmul1mcWq4NiNaHD+rZG0Rj
vI0YAUPJRQE49+ejuZUTUWCBuRVQPq0rN1+SvjVRmXHVBbbNXQyS3367MZLxcKJ6
78WyKSixwfP9K2Bogwe9
=8H89
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message