在Eclipse中单独列出web.xml错误

时间:2010-08-09 07:15:55

标签: eclipse xml-validation

当Eclipse检测到无效的XML文档时,在我的情况下是web.xml文件,它会转储DTD的内容模型,并告诉我该元素无效。这是非常无益的,因为它最终告诉我:

  

元素类型“web-app”的内容必须匹配“(icon?,display-name ?, description?,distributable ?, context-param *,filter *,filter-mapping *,listener *,servlet *, Servlet映射*,会话配置?,MIME映射*,欢迎文件列表?,错误页*,标签库*的resource-env-REF *,资源引用*,安全约束*,登录,配置?,安全角色*,ENV进入*,EJB-REF *,EJB本地-REF *)。”

在900行的web.xml文件中,错误并不容易找到。

如何挑出导致文档无效的第一个元素?

2 个答案:

答案 0 :(得分:2)

我会创建web.xml的副本并将内容分成两半(确保它保持良好状态),直到找到该元素。之后,添加复制文件的其余部分。

答案 1 :(得分:2)

我知道这是一个老问题,但对我而言,它最终成为web.xml选项的顺序。如果查看错误消息,则元素必须按错误中列出的确切顺序排列。例如:

<web-app>

<display-name>LBSPing!</display-name>

<context-param>
    ...
</context-param>

<listener>
    ...
</listener>

<servlet>
    ...
</servlet>

<servlet-mapping>
    ...
</servlet-mapping>

</web-app>

对我来说,我的context-params是在我的servlet和监听器节点之后,这导致了我的问题。