WEB开发网
开发学院WEB开发Jsp 从server.xml到web.xml的个人发现! 阅读

从server.xml到web.xml的个人发现!

 2008-01-05 08:47:39 来源:WEB开发网   
核心提示:我是一个初学者,本没什么东西可以卖弄的,从server.xml到web.xml的个人发现!,但一次碰到一个配置问题,苦思良久才得以解决,一切正常, 希望跟我一样迷茫的初学者有所收获,心情愉快的同时,特与跟我一样同为初学的同志们分享

  我是一个初学者,本没什么东西可以卖弄的,但一次碰到一个配置问题,
苦思良久才得以解决,心情愉快的同时,特与跟我一样同为初学的同志们
分享,不到之处,敬请原谅!!

问题:

某天我用Eclipse写了两个Servelet程序,预备摆上Tomcat上调试,一切配备好
了之后启动Tomcat,结果Tomcat启动报错web.xml文件出错 <web-app> did not match.

web.xml配置文件的原码是这样的:

<?xml version="1.0" encoding="gb2312" ?>
<!DOCTYPE web-app (View Source for full doctype...)>
- <web-app>
- <servlet>
<servlet-name>servletLogin</servlet-name>
<servlet-class>org.catalina.Login</servlet-class>
</servlet>
- <servlet-mapping>
<servlet-name>servletLogin</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
- <servlet>
<servlet-name>servletCheckID</servlet-name>
<servlet-class>org.catalina.CheckID</servlet-class>
</servlet>
- <servlet-mapping>
<servlet-name>servletCheckID</servlet-name>
<url-pattern>/CheckID</url-pattern>
</servlet-mapping>
</web-app>

解决:

后来我在研究这段代码时,分别屏蔽掉其中一个Servlet,他又可以
正常启动。这证实语法上不存在问题。结果在研究server.xml文件时
发现问题所在:先定义<servlet>,再定义<servlet-mapping>。
我不知道为什么,我把代码改为

<?xml version="1.0" encoding="gb2312" ?>
<!DOCTYPE web-app (View Source for full doctype...)>
- <web-app>
- <servlet>
<servlet-name>servletLogin</servlet-name>
<servlet-class>org.catalina.Login</servlet-class>
</servlet>
- <servlet>
<servlet-name>servletCheckID</servlet-name>
<servlet-class>org.catalina.CheckID</servlet-class>
</servlet>
- <servlet-mapping>
<servlet-name>servletLogin</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
- <servlet-mapping>
<servlet-name>servletCheckID</servlet-name>
<url-pattern>/CheckID</url-pattern>
</servlet-mapping>
</web-app>

后,一切正常。

希望跟我一样迷茫的初学者有所收获,也希望对此有所了解的高
手们能指点指点。感谢!!

Tags:server xml web

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接