正确的web.xml应该是这样的:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>servlet_Demo.HelloWorld</servlet-class>
</servlet>
<servlet>
<servlet-name>HelloWWW</servlet-name>
<servlet-class>servlet_Demo.HelloWWW</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>HelloWWW</servlet-name>
<url-pattern>/HelloWWW</url-pattern>
</servlet-mapping>
</web-app>
而我的web.xml文件是这样的:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>servlet_Demo.HelloWorld</servlet-class>
<servlet-name>HelloWWW</servlet-name>
<servlet-class>servlet_Demo.HelloWWW</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
<servlet-name>HelloWWW</servlet-name>
<url-pattern>/HelloWWW</url-pattern>
</servlet-mapping>
</web-app>
结果就会一会儿HelloWorld好使,结果就会一会儿HelloWWW好使,一会儿HelloWorld 和 HelloWWW 都好使。
这个低级错误折腾了我两天。后来我看了 Tomcat 5.5 自带的例子,才明白是怎么回事。
教训:要想系统地学习一门技术,必须看书。不过要是感到困惑时,别忘了看一看系统自带的例子。