[ 
https://issues.apache.org/jira/browse/GERONIMO-6150?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Forrest Xia updated GERONIMO-6150:
----------------------------------

    Attachment: web-forward-ear-3.0-SNAPSHOT.ear

> EAR with same servlet name in two war causes deployment failure
> ---------------------------------------------------------------
>
>                 Key: GERONIMO-6150
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-6150
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: deployment
>    Affects Versions: 3.0
>            Reporter: Forrest Xia
>         Attachments: web-forward-ear-3.0-SNAPSHOT.ear
>
>
> Have a ear file with this structure:
> ear1.ear
> --war1.war
> --war2.war
> war1 and war2 both have a servlet class named "TestServlet", but with 
> different implementation. When deploying the ear, failure happens as 
> following:
> 2011-09-07 00:26:27,513 ERROR [[/dispatch2]] Exception sending context 
> initialized event to listener instance of class 
> org.apache.geronimo.test.ContextListener
> java.lang.NoSuchMethodError: 
> org/apache/geronimo/test/TestServlet.testLookup(Ljava/lang/String;)V
>       at 
> org.apache.geronimo.test.ContextListener.contextInitialized(ContextListener.java:30)
>       at 
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
>       at 
> org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
>       at 
> org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
>       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:149)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
>       at java.lang.Thread.run(Thread.java:736)
> 2011-09-07 00:26:27,515 ERROR [StandardContext] Error listenerStart
> 2011-09-07 00:26:27,516 ERROR [StandardContext] Context [/dispatch2] startup 
> failed due to previous errors
> 2011-09-07 00:26:27,516 ERROR [ContainerBase] ContainerBase.addChild: start: 
> org.apache.catalina.LifecycleException: java.io.IOException: Context did not 
> start for an unknown reason
>       at 
> org.apache.geronimo.tomcat.GeronimoStandardContext.startInternal(GeronimoStandardContext.java:516)
>       at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
>       at 
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
>       at 
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
>       at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
>       at 
> org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:314)
>       at 
> org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:571)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:1000)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:555)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
>       at 
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:176)
>       at 
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:45)
>       at 
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:254)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:234)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:569)
>       at 
> org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
>       at 
> org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:462)
>       at 
> org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:226)
>       at 
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:702)
>       at 
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:681)
>       at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>       at java.lang.reflect.Method.invoke(Method.java:611)
>       at 
> org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:131)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:883)
>       at 
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:245)
>       at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:344)
>       at sun.reflect.GeneratedMethodAccessor97.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>       at java.lang.reflect.Method.invoke(Method.java:611)
>       at 
> org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:131)
>       at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:883)
>       at 
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:245)
>       at 
> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
>       at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:848)
>       at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:773)
>       at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1438)
>       at 
> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:83)
>       at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1276)
>       at 
> java.security.AccessController.doPrivileged(AccessController.java:284)
>       at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1378)
>       at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:799)
>       at sun.reflect.GeneratedMethodAccessor92.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>       at java.lang.reflect.Method.invoke(Method.java:611)
>       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
>       at sun.rmi.transport.Transport$1.run(Transport.java:171)
>       at 
> java.security.AccessController.doPrivileged(AccessController.java:284)
>       at sun.rmi.transport.Transport.serviceCall(Transport.java:167)
>       at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:547)
>       at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:802)
>       at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:661)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
>       at java.lang.Thread.run(Thread.java:736)
> Caused by: java.io.IOException: Context did not start for an unknown reason
>       at 
> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:816)
>       at 
> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48)
>       at 
> org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
>       at 
> org.apache.geronimo.tomcat.GeronimoStandardContext.startInternal(GeronimoStandardContext.java:500)
>       ... 62 more
> 2011-09-07 00:26:27,524 ERROR [[/dispatch2]] Exception sending context 
> destroyed event to listener instance of class 
> org.apache.geronimo.test.ContextListener
> java.lang.NoSuchMethodError: 
> org/apache/geronimo/test/TestServlet.testLookup(Ljava/lang/String;)V
>       at 
> org.apache.geronimo.test.ContextListener.contextDestroyed(ContextListener.java:26)
>       at 
> org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4763)
>       at 
> org.apache.catalina.core.StandardContext$4.run(StandardContext.java:5472)
>       at java.lang.Thread.run(Thread.java:736)
> Use the attached ear for recreation.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to