Java 如何在maven jaxb插件中使用xmlAdapter

Java 如何在maven jaxb插件中使用xmlAdapter,java,xsd,jaxb,unmarshalling,Java,Xsd,Jaxb,Unmarshalling,嗨,我有一个带base64Binary的xsd模式。当这个插件生成时,这个元素看起来像 @XmlElement(name = "element") protected byte[] element; 但是我如何告诉这个插件使用@XmlJavaTypeAdapter(HexBinaryAdapter.class),所以我需要这样的东西 @XmlJavaTypeAdapter(HexBinaryAdapter.class) @XmlElement(name = "element")

嗨,我有一个带base64Binary的xsd模式。当这个插件生成时,这个元素看起来像

@XmlElement(name = "element")
    protected byte[] element;
但是我如何告诉这个插件使用@XmlJavaTypeAdapter(HexBinaryAdapter.class),所以我需要这样的东西

@XmlJavaTypeAdapter(HexBinaryAdapter.class)
    @XmlElement(name = "element")
    protected byte[] element;
我希望这是可能的thx的帮助


PS:我不能修改这些插件生成的类,因为它们总是被重写的

您应该创建一个JAXB模式绑定文件,指示JAXB实现使用内置的
javax.xml.bind.DatatypeConverter
来执行与
hexBinary
的转换

<jxb:bindings 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
    version="2.1">
    <jxb:bindings schemaLocation="YourSchema.xsd">
        <jxb:bindings node="//xs:element[@name='element']">
            <jxb:property>
                <jxb:baseType>
                    <jxb:javaType name="byte[]"
                        parseMethod="javax.xml.bind.DatatypeConverter.parseHexBinary" 
                        printMethod="javax.xml.bind.DatatypeConverter.printHexBinary"/>
                </jxb:baseType>
            </jxb:property>
        </jxb:bindings>
    </jxb:bindings>
</jxb:bindings>

了解更多信息