更新时间:2022-10-20 07:49:10
如果您在 web.xml 和注释中声明了相同的映射,那么在更高版本的 Tomcat 中您将得到这个精确的错误.
I am using Tomcat 7 and Eclipse in JDK 7 to create this simple servlet application. But when I copied the war file into tomcat, I cannot start it and get this error:
The servlets named [create_subscription] and [servlet.create] are both mapped to the url-pattern [/create] which is not permitted
the web.xml is:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>CC</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>create_subscription</servlet-name>
<servlet-class>servlet.create</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>create_subscription</servlet-name>
<url-pattern>/create</url-pattern>
</servlet-mapping>
</web-app>
If you have the same mapping declared in both web.xml and in an annotation, you will get this precise error with later versions of Tomcat.
名为 [create_subscription] 和 [servlet.create] 的 servlet 都映射到不允许的 url-pattern [/create]
java.lang.IllegalArgumentException:名为[X]和[Y]的servlet都映射到不允许的url-pattern [/ url]
IllegalArgumentException:名为[HelloWorlds]和[Hello]的servlet都映射到不允许的url-pattern [/ sHelloWorld]
java.lang.IllegalArgumentException: 名为 [X] 和 [Y] 的 servlet 都映射到不允许的 url-pattern [/url]