[ http://issues.apache.org/jira/browse/GERONIMO-1871?page=all ]
Jeff Genender closed GERONIMO-1871:
-----------------------------------
Fix Version: 1.1
Resolution: Fixed
Looks like it in v1.1 now.
> 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
> Assignee: Gianny Damour
> Priority: Critical
> Fix For: 1.1
>
> 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 [EMAIL PROTECTED] 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