geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bryan Noll (JIRA)" <...@geronimo.apache.org>
Subject [jira] Created: (GERONIMO-1871) Unable to deploy Tapestry app due to classloading issue
Date Wed, 19 Apr 2006 22:20:34 GMT
Unable to deploy Tapestry app due to classloading issue
-------------------------------------------------------

         Key: GERONIMO-1871
         URL: http://issues.apache.org/jira/browse/GERONIMO-1871
     Project: Geronimo
        Type: Bug
    Security: public (Regular issues) 
  Components: kernel  
    Versions: 1.2    
 Environment: Windows XP
    Reporter: Bryan Noll


Here is the stacktrace encountered when attempting to deploy a Tapestry application.  Please
scroll down to see more info after the stack trace.

org.apache.hivemind.ApplicationRuntimeException: Error: Module hivemind is duplicated!  Definition
in jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-1.1.jar!/META-INF/hivemodule.xml
has been ignored in favor of existing definition from jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-1.1.jar!/META-INF/hivemodule.xml.
org.apache.hivemind.impl.StrictErrorHandler.error(StrictErrorHandler.java:39)
org.apache.hivemind.impl.RegistryInfrastructureConstructor.addModuleDescriptor(RegistryInfrastructureConstructor.java:202)
org.apache.hivemind.impl.RegistryBuilder.processModuleDescriptorProvider(RegistryBuilder.java:168)
org.apache.hivemind.impl.RegistryBuilder.constructRegistry(RegistryBuilder.java:143)
org.apache.tapestry.ApplicationServlet.constructRegistry(ApplicationServlet.java:253)
org.apache.tapestry.ApplicationServlet.init(ApplicationServlet.java:194)
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3915)
org.apache.catalina.core.StandardContext.start(StandardContext.java:4176)
org.apache.geronimo.tomcat.GeronimoStandardContext.access$101(GeronimoStandardContext.java:66)
org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:270)
org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:31)
org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:185)
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:287)
org.apache.geronimo.tomcat.TomcatContainer$$FastClassByCGLIB$$9370b073.invoke(<generated>)
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:800)
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:36)
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
org.apache.geronimo.tomcat.TomcatContainer$$EnhancerByCGLIB$$7af7fb0d.addContext(<generated>)
org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:416)
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:936)
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:325)
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:110)
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:132)
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:537)
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:208)
org.apache.geronimo.kernel.config.Configuration.startRecursiveGBeans(Configuration.java:315)
org.apache.geronimo.kernel.config.Configuration$$FastClassByCGLIB$$7f4b4a9b.invoke(<generated>)
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:835)
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:178)
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:173)
org.apache.geronimo.kernel.config.ConfigurationManagerImpl.start(ConfigurationManagerImpl.java:229)
org.apache.geronimo.kernel.config.ConfigurationManagerImpl$$FastClassByCGLIB$$fbed85d2.invoke(<generated>)
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:835)
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:178)
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:125)
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:118)
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:835)
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:178)
org.apache.geronimo.kernel.jmx.MBeanServerDelegate.invoke(MBeanServerDelegate.java:117)
mx4j.remote.rmi.RMIConnectionInvoker.invoke(RMIConnectionInvoker.java:219)
sun.reflect.GeneratedMethodAccessor223.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:324)
mx4j.remote.rmi.RMIConnectionProxy.invoke(RMIConnectionProxy.java:34)
mx4j.remote.rmi.RMIConnectionSubjectInvoker.chain(RMIConnectionSubjectInvoker.java:99)
mx4j.remote.rmi.RMIConnectionSubjectInvoker.access$000(RMIConnectionSubjectInvoker.java:31)
mx4j.remote.rmi.RMIConnectionSubjectInvoker$1.run(RMIConnectionSubjectInvoker.java:90)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
mx4j.remote.MX4JRemoteUtils.subjectInvoke(MX4JRemoteUtils.java:163)
mx4j.remote.rmi.RMIConnectionSubjectInvoker.subjectInvoke(RMIConnectionSubjectInvoker.java:86)
mx4j.remote.rmi.RMIConnectionSubjectInvoker.invoke(RMIConnectionSubjectInvoker.java:80)
$Proxy4.invoke(Unknown Source)
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:221)
sun.reflect.GeneratedMethodAccessor223.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:324)
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
sun.rmi.transport.Transport$1.run(Transport.java:148)
java.security.AccessController.doPrivileged(Native Method)
sun.rmi.transport.Transport.serviceCall(Transport.java:144)
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
java.lang.Thread.run(Thread.java:534) 


The org.apache.hivemind.impl.XmlModuleDescriptorProvider.getDescriptorResources method of
the hivemind-1.1.jar (depended upon by Tapestry) makes a call like:

classLoader.getResources("META-INF/hivemodule.xml")

and 14 different resources are returned.  There should only be 7, as each one of them are
errantly duplicated.  See the following output from some println's added to the hivemind code.
 This is printed out in the e.hasMoreElements while loop...

15:10:26,006 INFO  [XmlModuleDescriptorProvider] Processing modules visible to org.apache.hivemind.impl.DefaultClassResolver@1ce6eaf
for resourcePath = META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-lib-1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-annotations-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-contrib-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-flash-0.1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-spring-0.1.2.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/hivemind-lib-1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-annotations-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-contrib-4.0.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-flash-0.1.1.jar!/META-INF/hivemodule.xml
XmlModuleDescriptorProvider.getDescriptorResources - jar:file:/C:/tools/geronimo-1.2-SNAPSHOT/config-store/42/war/WEB-INF/lib/tapestry-spring-0.1.2.jar!/META-INF/hivemodule.xml
size of descriptors list = 14

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message