Java webapp项目名称为ROOT Eclipse Juno Tomcat 7.0时,servlet不可用

Java webapp项目名称为ROOT Eclipse Juno Tomcat 7.0时,servlet不可用,java,eclipse,tomcat,servlets,Java,Eclipse,Tomcat,Servlets,当我创建一个名为ROOT的webapp时,在com.companyName.Test包中创建一个名为Test的新servlet,该servlet映射到带有@WebServlet(“/Test”)的/Test,并从localhost/Test(或localhost/ROOT/Test)访问,我得到一个404。 但是,如果webapp项目具有不同的名称,即“someWebapp”,我可以按预期从localhost/someWebapp/test访问 由于我无法控制的原因,webapp项目名称必须是R

当我创建一个名为ROOT的webapp时,在com.companyName.Test包中创建一个名为Test的新servlet,该servlet映射到带有@WebServlet(“/Test”)的/Test,并从localhost/Test(或localhost/ROOT/Test)访问,我得到一个404。 但是,如果webapp项目具有不同的名称,即“someWebapp”,我可以按预期从localhost/someWebapp/test访问

由于我无法控制的原因,webapp项目名称必须是ROOT,测试servlet必须映射到/Test,并且我必须使用Juno和tomcat7.0

提示:Eclipse没有创建web.xml(但如果web应用程序的名称与ROOT不同,则这不是问题)。我想保持这种方式,改用@WebServlet注释。任何试图修复此问题的搜索都假定存在web.xml


提示2:静态资源(如html)从/path开始工作,只有servlet返回404,例如localhost/htmltest.test。

ROOT具有特殊含义,因为它被用作默认上下文。您可以共享server.xml和context.xml吗?它们是apache-tomcat-7.0.27的默认值。我使用的是干净的apache-tomcat-7.0.27安装。请转到您的tomcat/webapps/目录,先删除根应用程序,然后尝试通过eclipse重新部署。感谢Juned Ahsan,但不幸的是,这没有起作用。