我的问题很像this,但有一些小差异让我完全不知所措。
我尝试使用带有xjb自定义的xsd编译一些java类来绑定jaxb:Date到java date。当我从命令行运行它时它工作正常,但我现在试图将它合并到一个蚂蚁脚本中,并且我得到一个错误:
[错误]" jaxb:globalBindings"自定义与任何架构元素都没有关联。
这是我的xjb:
<jaxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jaxb:globalBindings>
<jaxb:javaType name="java.util.Date"
xmlType="xs:dateTime"
parseMethod="sel.date.XsdDateTimeConverter.unmarshal"
printMethod="sel.date.XsdDateTimeConverter.marshalDateTime"
/><jaxb:javaType
name="java.util.Date"
xmlType="xs:date"
parseMethod="sel.date.XsdDateTimeConverter.unmarshal"
printMethod="sel.date.XsdDateTimeConverter.marshalDate"
/>
</jaxb:globalBindings>
</jaxb:bindings>
我没有使用maven,所以我无法真正使用上面列出的答案。此外,似乎需要知道将要合并它的架构,但我并不是真的想要这样做,因为我试图将这个作为一个我可以使用的通用脚本不同的xsd&#39; s。
任何人对我在这里失踪的东西都有任何想法?
答案 0 :(得分:0)
尝试将jaxb:version="2.0"
更改为jaxb:version="2.1"
。
当然这取决于你的jaxb生成器。
答案 1 :(得分:0)
这可能是由于旧版本的jaxb和xjc造成的。我在运行maven-jaxb-plugin 1.1时遇到了这个错误,提高了插件的版本解决了这个问题。