好的,这应该是基本的,我以前通过eclipse和weblogic多次使用servlet,没有问题。然而,对于Tomcat 6,我对Servlet映射有问题。
web.xml:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<description>
Servlet and JSP Examples.
</description>
<display-name>Servlet and JSP Examples</display-name>
<servlet>
<servlet-name>HelloWorldExample</servlet-name>
<servlet-class>HelloWorldExample</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorldExample</servlet-name>
<url-pattern>/HelloWorldExample</url-pattern>
</servlet-mapping>
</web-app>我的web.xml位于我的WEB文件夹中,servlet HelloWorldExample.class位于WEB/HelloWorldExample.class/
它们都位于tomcat/webapp/ch1/
据我所知,一切都很好,然而,经过几个小时的反复尝试和多次重新启动,我仍然得到:
类型状态报告 信息/ch1/HelloWorldExample示例 说明请求的资源不可用。
http://localhost:8080/ch1/HelloWorldExample目录结构屏幕截图

如果有人能指出我所犯的错误,我将永远感激:)
发布于 2013-02-20 07:30:31
您应该在Tomcat上部署构建并导出WAR文件并将其部署到Tomcat上,然后它将自动在正确的位置上运行。另外,请注意web.xml的这一部分:
<servlet>
<servlet-name>HelloWorldExample</servlet-name>
<servlet-class>HelloWorldExample</servlet-class>
</servlet>Servlet类需要完全限定类名,即:your.package.classname (如果您使用默认包,则忽略它,这通常是一种错误的做法)。在处理这个问题时,我建议您安装Tomcat 7并利用Servlet3.0的优点,即摆脱web.xml配置并使用Servlet注释。更多信息:
发布于 2013-02-20 07:15:09
你应该把文件夹"ch1“放在ch1下面,而不是放在tomcat/webapp/ROOT下。
遵循以下文件夹结构:
tomcat:
--webapps
----ch1
--------META-INF
--------WEB-INF
----------classes
----------lib
----------web.xml发布于 2013-02-20 07:18:01
您的ch1文件夹应该在webapps下而不是webapps/ROOT下面
https://stackoverflow.com/questions/14974205
复制相似问题