Intellij idea 这个想法似乎不了解ServletAPI3.0XML模式,但我的web应用程序部署正常吗?

Intellij idea 这个想法似乎不了解ServletAPI3.0XML模式,但我的web应用程序部署正常吗?,intellij-idea,xsd,servlet-3.0,Intellij Idea,Xsd,Servlet 3.0,我能够使用基于注释的url映射从IDEA部署我的web应用程序而不会出现问题,那么为什么IDEA仍然强调标记违反了这里的模式定义 (使用IDEA 12.1.4,Tomcat 7)IDEA根据模式验证XML,正确地说这里不允许元素元数据完整 如果查看模式web-app_3.0.xsd,您将看到它导入web-commmon_3.0.xsd。这个web公共模式将元数据完整定义为web公共属性的一部分 <xsd:attributeGroup name="web-common-attributes"

我能够使用基于注释的url映射从IDEA部署我的web应用程序而不会出现问题,那么为什么IDEA仍然强调标记违反了这里的模式定义


(使用IDEA 12.1.4,Tomcat 7)

IDEA根据模式验证XML,正确地说这里不允许
元素元数据完整

如果查看模式
web-app_3.0.xsd
,您将看到它导入
web-commmon_3.0.xsd
。这个
web公共
模式将
元数据完整
定义为
web公共属性
的一部分

<xsd:attributeGroup name="web-common-attributes">
  <xsd:attribute name="version"
                 type="javaee:web-app-versionType"
                 use="required"/>
  <xsd:attribute name="id"
                 type="xsd:ID"/>
  <xsd:attribute name="metadata-complete"
                 type="xsd:boolean">
    ...

+1用于正确使用和拼写Incognitant:)您能检查IntelliJ是否具有正确的模式吗?您可以通过在以.xsdGreat-tip结尾的字符串上按ctrl-b来钻取它!我不知道IDEA让你们跳到它的模式定义。迄今为止,它所对抗的总是黑魔法。非常感谢:)太棒了,非常感谢。xml是从一个数据库中提取出来的。考虑到软件出版的社论状况,我应该对此提出质疑。哦。。。我还能够在web-common_3.0.xsd中读到应用程序部署的原因:
如果未指定metadata complete或将其设置为“false”,则部署工具必须检查应用程序的类文件,以获取规范指定的注释。
<?xml version=1.0 encoding="UTF-8"?>
<web-app 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"
         version="3.0"
         metadata-complete="false">

    <display-name>Hello World</display-name>

</web-app>