一个简单的servlet导致eclipse无法启动tomcat的问题
现象
用eclipse建了一个java web工程,然后在src目录下写了一个简单的servlet。自己一行代码没写,是eclipse自动生成的代码。运行时,tomcat无法启动如下:
web.xml为:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="3.1"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<display-name>14.15</display-name>
<servlet>
<display-name>SaveBook</display-name>
<servlet-name>SaveBook</servlet-name>
<servlet-class>com.study.SaveBook</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SaveBook</servlet-name>
<url-pattern>/SaveBook</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
解决
将<url-pattern>/SaveBook</url-pattern>
改为<url-pattern>/servlet/SaveBook</url-pattern>
。
注意,路径加了个servlet
。
这里,不一定非要是servlet,其它的什么字符都行,或者多加几级路径也可以。
原因不明。