Bug 50087 - When metadata-complete="false" throw illegal JVM_CONSTANT_Class name
When metadata-complete="false" throw illegal JVM_CONSTANT_Class name
Status: RESOLVED FIXED
Product: Tomcat 7
Classification: Unclassified
Component: Catalina
trunk
PC All
: P2 normal (vote)
: ---
Assigned To: Tomcat Developers Mailing List
:
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2010-10-13 09:36 UTC by heyoulin
Modified: 2010-10-14 12:07 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description heyoulin 2010-10-13 09:36:12 UTC
When metadata-complete="false" and add groovy-all-1.7.2.jar to app lib throw

java.lang.reflect.InvocationTargetException
	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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:290)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:418)
Caused by: java.lang.ClassFormatError: groovy/jmx/builder/package-info : illegal JVM_CONSTANT_Class name: groovy/jmx/builder/package-info
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2804)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1144)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1639)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1517)
	at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:1952)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1915)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1802)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1761)
	at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1747)
	at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1252)
	at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:881)
	at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:315)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4700)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1028)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:773)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1028)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:278)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:429)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:662)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:592)
	... 6 more
Comment 1 Konstantin Kolinko 2010-10-13 09:49:47 UTC
What is your JRE version?
Comment 2 heyoulin 2010-10-13 11:04:51 UTC
I try jdk1.6.0_21 and jrmc-4.0.1-1.6.0 both throw this exception. Only groovy-all-1.7.2 and not test on other groovy version. But this worked fine before until i use latest build.
Comment 3 Mark Thomas 2010-10-14 12:07:11 UTC
Fixed in trunk and will be in 7.0.4 onwards. You'll still see the stack trace (since that Groovy class has an invalid name) but context deployment will continue rather than failing.