解决The content of element type "web-app" must match报错

Spring MVC中配置多个Servlet时,IDEA报错,如下:

The content of element type "web-app" must match "(icon ,display-
name ,description ,distributable ,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-
mapping*,session-config ,mime-mapping*,welcome-file-list ,error-page*,taglib*,resource-env-
ref*,resource-ref*,security-constraint*,login-config ,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".
- No grammar constraints (DTD or XML schema) detected for the document.

意思很简单,次序不对,很多博文建议删除DOCTYPE中的校验代码方法是不推荐的

正确做法是调整次序

如web.xml中存在如下多个servlet,此时编辑器将报错,xml代码如下:

复制代码
 1   <servlet>
 2     <servlet-name>UserServlet</servlet-name>
 3     <servlet-class>fun.liping.web.UserServlet</servlet-class>
 4   </servlet>
 5   <servlet-mapping>
 6     <servlet-name>UserServlet</servlet-name>
 7     <url-pattern>/userServlet</url-pattern>
 8   </servlet-mapping>
 9   <servlet>
10     <servlet-name>DispatcherServlet</servlet-name>
11     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
12     <load-on-startup>1</load-on-startup>
13   </servlet>
14   <servlet-mapping>
15     <servlet-name>DispatcherServlet</servlet-name>
16     <url-pattern>/</url-pattern>
17   </servlet-mapping>
复制代码

 

此时要保证所有的servlet标签在servlet-mapping标签前面,调整次序如下:

复制代码
 1   <servlet>
 2     <servlet-name>UserServlet</servlet-name>
 3     <servlet-class>fun.liping.web.UserServlet</servlet-class>
 4   </servlet>
 5   <servlet>
 6     <servlet-name>DispatcherServlet</servlet-name>
 7     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 8     <load-on-startup>1</load-on-startup>
 9   </servlet>
10   <servlet-mapping>
11     <servlet-name>UserServlet</servlet-name>
12     <url-pattern>/userServlet</url-pattern>
13   </servlet-mapping>
14   <servlet-mapping>
15     <servlet-name>DispatcherServlet</servlet-name>
16     <url-pattern>/</url-pattern>
17   </servlet-mapping>
复制代码

以上,问题解决。

一起学习加微信交流:

 

posted @   SharpL  阅读(660)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2015-03-15 Oracle笔记
2015-03-15 如何在WIN7_64环境下安装Oracle10g_64位版本
点击右上角即可分享
微信分享提示