AASV10默认是对应用的描述文件web.xml是做严格的规范检测的,如果文件内容有问题,如标签库的顺序没有符合标准,部署时会报错,但是能够通过设置,对web.xml不校验或者检验后给出错误提示但是继续部署。
问题:部署某个应用报如下错误
Exception during lifecycle processing java.io.IOException: org.xml.sax.SAXParseException; lineNumber: 57; columnNumber: 11; Deployment descriptor file WEB-INF/web.xml in archive [report]. 元素类型为 "web-app" 的内容必须匹配
"(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.xml 标签库顺序问题 在后面部署报错,调整到 在前面部署成功。
解决方法:
应用程序设置中可以对 web 应用描述文件 web.xml 解析方式进行设置,默认为“完全”,当 web.xml 文件里面的标签库的顺序不对时,会报错并且不进行部署。
XML 验证选项说明:
· 1.完全:报错并且不部署失败。
· 2.解析:报告错误,继续部署。
· 3.无:不报告错误,继续部署。