Bug 50087 - When metadata-complete="false" throw illegal JVM_CONSTANT_Class name
Summary: When metadata-complete="false" throw illegal JVM_CONSTANT_Class name
Status: RESOLVED FIXED
Alias: None
Product: Tomcat 7
Classification: Unclassified
Component: Catalina (show other bugs)
Version: trunk
Hardware: PC All
: P2 normal (vote)
Target Milestone: ---
Assignee: Tomcat Developers Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
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.