[jboss-jira] [JBoss JIRA] Created: (JBAS-5671) Attempting to deploy a duplicate context removes existing servlet bindings
Adrian Brock (JIRA)
jira-events at lists.jboss.org
Tue Jun 24 06:29:39 EDT 2008
Attempting to deploy a duplicate context removes existing servlet bindings
--------------------------------------------------------------------------
Key: JBAS-5671
URL: http://jira.jboss.com/jira/browse/JBAS-5671
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Web (Tomcat) service
Reporter: Adrian Brock
Assigned To: Remy Maucherat
In jboss by default there is a root Tomcat context supplied by deploy/ROOT.war
This jsp page can be accessed using http://localhost:8080
If you attempt to deploy another war in the same context it correctly gives an error message
11:53:40,865 INFO [TomcatDeployment] deploy, ctxPath=/, vfsUrl=
11:53:40,889 ERROR [BaseModelMBean] Exception invoking method addChild
java.lang.IllegalArgumentException: addChild: Child name '' is not unique
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:790)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:780)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
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:585)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
at org.apache.catalina.core.StandardContext.init(StandardContext.java:5384)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:344)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:139)
at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:431)
at org.jboss.web.deployers.WebModule.startModule(WebModule.java:112)
at org.jboss.web.deployers.WebModule.start(WebModule.java:90)
But it also removes the servlet bindings for the ROOT.war,
To reproduce:
1) Start jboss
2) Access http://localhost:8080 - gives a jsp page
3) In the testsuite, run ./build.sh one-test -Dtest=org.jboss.test.web.test.RootContextUnitTestCase
4) Refresh the page (make sure to flush the web browser cache)
If you look at Tomcat's JSR77 mbeans before and after, you'll see that the web module for localhost/ still exists,
but the servlet bindings have disappeared.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list