You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决IntelliJ IDEA中xjb文件jaxb:extensionBindingPrefixes属性不允许问题

解决JAXB 3.0绑定文件(xjb)中jaxb:extensionBindingPrefixes属性不允许的错误

问题场景

在IntelliJ IDEA 2023.2.1中处理Maven项目的JAXB 3.0绑定文件时,遇到报错:Attribute jaxb:extensionBindingPrefixes is not allowed here,对应的xjb文件代码如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<jaxb:bindings version="3.0" xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
               xmlns:xs="http://www.w3.org/2001/XMLSchema"
               jaxb:extensionBindingPrefixes="xjc">

    <jaxb:globalBindings>
        <xjc:simple />
        <xjc:serializable uid="-1" />
        <jaxb:javaType name="java.util.Calendar" xmlType="xs:dateTime"
            parseMethod="jakarta.xml.bind.DatatypeConverter.parseDateTime"
            printMethod="jakarta.xml.bind.DatatypeConverter.printDateTime" />
    </jaxb:globalBindings>
</jaxb:bindings>

原因

Jakarta JAXB 3.0(对应xjb中的version="3.0")调整了绑定文件的Schema规则:extensionBindingPrefixes属性不再允许出现在根<jaxb:bindings>元素上,必须移至<jaxb:globalBindings>元素中。

解决方案

修改xjb文件,将extensionBindingPrefixes="xjc"从根元素移到<jaxb:globalBindings>标签内,移除根元素上的该属性。修改后的完整代码如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<jaxb:bindings version="3.0" xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <jaxb:globalBindings extensionBindingPrefixes="xjc">
        <xjc:simple />
        <xjc:serializable uid="-1" />
        <jaxb:javaType name="java.util.Calendar" xmlType="xs:dateTime"
            parseMethod="jakarta.xml.bind.DatatypeConverter.parseDateTime"
            printMethod="jakarta.xml.bind.DatatypeConverter.printDateTime" />
    </jaxb:globalBindings>
</jaxb:bindings>

关键修改点

  • 删除根<jaxb:bindings>元素上的jaxb:extensionBindingPrefixes="xjc"属性
  • 在<jaxb:globalBindings>标签中添加extensionBindingPrefixes="xjc"属性(无需加jaxb:前缀)
  • 其余代码保持不变,xjc扩展的命名空间仍使用旧的Java EE命名空间是合法的,因为JAXB 3.0兼容该扩展的命名规则

内容的提问来源于stack exchange,提问作者SpywithJava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 04:38:14