The content of element type “web-app” must match "(icon?,display-name?,description?,报错解决方案
错误
报错场景: 在新版本web框架中,配置过滤器
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*)”.
原因:文档内容标签顺序不符合web-app_2_3.dtd规范
。
。
。
解决方案
方案一:严格按照提示上的顺序排列
方案二:删除 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" >
这段内容
方案三:降级 把web.xml替换成旧版本的文件头 <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> </web-app>
注:方案二 删除官方配置的好的文件 不建议 使用,方案 可以使用,但是我比较使用最新版的东西。 所以我推荐使用方案一,只需要按照官方给出的顺序,依次把标签排列好即可