【发布时间】:2013-06-29 20:27:05
【问题描述】:
我正在将现有项目从 Tomcat 6 迁移到 7。启动时我遇到了以下记录的错误消息:
Jul 02, 2013 2:38:39 PM org.apache.catalina.startup.ContextConfig parseWebXml
SEVERE: Parse error in application web.xml file at jndi:/localhost/padd/WEB-INF/web.xml
org.xml.sax.SAXParseException; systemId: jndi:/localhost/padd/WEB-INF/web.xml; lineNumber: 309; columnNumber: 21; Error at (309, 21) : The servlets named [ArtefactServlet] and [saveArtefactServlet] are both mapped to the url-pattern [/saveRestoration] which is not permitted
at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2687)
...
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: The servlets named [ArtefactServlet] and [saveArtefactServlet] are both mapped to the url-pattern [/saveRestoration] which is not permitted
这里是 WEB-INF/web.xml 309fff 行:
<servlet-mapping>
<servlet-name>saveArtefactServlet</servlet-name>
<url-pattern>/saveRestoration</url-pattern>
</servlet-mapping>
编辑:
<servlet-mapping>
<servlet-name>ArtefactServlet</servlet-name>
<url-pattern>/saveRestoration</url-pattern>
</servlet-mapping>
这里tomcat的web.xml:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<!-- The mappings for the JSP servlet -->
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
<url-pattern>*.jspx</url-pattern>
</servlet-mapping>
我尝试使用映射,但没有取得任何进展。希望你能帮忙!
【问题讨论】:
-
我认为这是重复的.请检查 web.xml 中是否存在任何同名的事件saveArtefactServlet /saveRestoration -
在 we.xml 文件中,servlet-name 已多次用于不同的 url-patterns。对于tomcat 6,这没问题,这可能是问题吗?
-
一个 servlet 到多个映射可以,多个 servlet 到一个映射,不行
-
您能否显示 'ArtefactServlet' 的 servlet 映射
-
我已将其添加到问题中
标签: java tomcat servlets tomcat7 web.xml