今天在寫servlet程序時碰到了這個問題,Tomcat不能啓動,提示的問題如下:
嚴重: 子容器啓動失敗
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/filter]]
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/filter]]
Caused by: java.lang.IllegalArgumentException: 名爲 [MyServlet]和 [filter.MyServlet] 的servlet不能映射爲一個url模式(url-pattern) [/MyServlet]
我的Servletzaiweb.xml中的配置如下:
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>filter.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/MyServlet</url-pattern>
</servlet-mapping>
在我百思不得其解時偶然修改了一下url-pattern的內容隨便改了一個ms,bug就消失了。。。然後我發現url-patten的名字不能和原servlet的名字一樣。