This question already has answers here:
java.lang.IllegalArgumentException: The servlets named [X] and [Y] are both mapped to the url-pattern [/url] which is not permitted
(6个答案)
3年前关闭。
启动Tomcat v7.0时出现问题。
我发现我的问题出在web.xml文件中。
这个文件看起来像这样
当我删除servlet-mapping标签时,Tomcat启动良好。
这是我的项目树
我尝试更改http端口号,但是没有用。
谢谢你的支持!
(6个答案)
3年前关闭。
启动Tomcat v7.0时出现问题。
'Staring Tomcat v7.0 Server at localhost' has encountered a problem.
Server Tomcat v7.0 Server at localhost failed to start.
我发现我的问题出在web.xml文件中。
这个文件看起来像这样
<display-name>Exercises</display-name>
<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>
<servlet>
<servlet-name>table</servlet-name>
<servlet-class>servletbasic.MakeTable</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>table</servlet-name>
<url-pattern>/MakeTable</url-pattern>
</servlet-mapping>
当我删除servlet-mapping标签时,Tomcat启动良好。
这是我的项目树
---Java Resources
---servletbasic
---MakeTable.java
我尝试更改http端口号,但是没有用。
谢谢你的支持!
最佳答案
从您的日志中:
引起原因:java.lang.IllegalArgumentException:名为的servlet
[table]和[servletbasic.MakeTable]都映射到
不允许的网址模式[/ MakeTable]
看来您有两个servlet table
和MakeTable
映射到相同的URL /MakeTable
。
这可能是由于在servlet类中使用annotation-based
注释通过@WebServlet
混合了两个servlet声明方法,以及通过与发布的相同的web.xml-based
配置而引起的。
10-07 19:02