【问题标题】:cvc-complex-type.3.2.2: Attribute 'jaxb:extensionBindingPrefixes' is not allowed to appear in element 'jaxb:bindings'cvc-complex-type.3.2.2:属性“jaxb:extensionBindingPrefixes”不允许出现在元素“jaxb:bindings”中
【发布时间】:2014-11-09 19:28:38
【问题描述】:

我已经检查了一个项目...并尝试解决 Eclipse Luna 4.4.0 中的一些问题。在其中一个 maven 项目中,我有以下 xjb 文件:

<?xml version="1.0" encoding="UTF-8"?>
    <jaxb:bindings
    version="2.0"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    jaxb:extensionBindingPrefixes="xjc"
    xmlns:xjc= "http://java.sun.com/xml/ns/jaxb/xjc"
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    xsi:schemaLocation="
    http://java.sun.com/xml/ns/jaxb
    http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd
">
...
...

但 Eclipse 报告我问题 >
cvc-complex-type.3.2.2:属性 'jaxb:extensionBindingPrefixes' 不允许出现在元素 'jaxb:bindings' 中

有人知道为什么吗?

【问题讨论】:

    标签: eclipse maven jaxb xjc


    【解决方案1】:

    bindingschema_2_0.xsd 似乎不够用。它声明了extensionBindingPrefixes 属性,但不在全局bindings 元素中使用它。

    在您发布的代码中使用jaxb:extensionBindingPrefixes 属性对我来说看起来是正确的。

    就我个人而言,我从未在绑定文件中使用过 xsi:location。您可以安全地删除它。

    【讨论】:

    • 如果我删除 xsi:schemaLocation 我会摆脱错误,但也会出现新的警告:No grammar constraints (DTD or XML Schema) referenced in the document
    • @Curamrda 不是每个文档都有 DTD 或 XML Schema,也不是每个文档都需要一个。我认为警告通常没有意义。
    • 嗯...但代码不是我的。我不想改变它。我在许多代码示例中找到了开始标记,所以我需要说服 Eclipse 删除错误。仍在寻找解决方案:(
    • 我至少可以帮助你解决这个愚蠢的日食警告。缺少架构或 DTD。只需添加一个 XML doctype 指令,后跟根元素的名称 - 这表示一个简约(即空)内联“doctype”定义。我通常会添加评论来解释这应该是什么意思。 !
    猜你喜欢
    • 2014-11-27
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 2016-09-30
    • 2014-12-28
    • 2023-03-09
    • 1970-01-01
    • 2016-08-11
    相关资源
    最近更新 更多