从scheme生成带有@XmlJavaTypeAdapter的java类

时间:2016-03-29 12:29:19

标签: java jaxb marshalling unmarshalling xjc

我有xsd架构,我的类是从该架构生成的。

我需要XmlAdapter才能正确编组某些类型的编组/解组。 我创建了这样的适配器(例如MyAdapter),但我不能通过@XmlJavaTypeAdapter(MyAdapter.class)添加它,因为我的类是从方案生成的。

是否可以从带有适配器定义的方案生成类?

例如我有方案 - >我想要

@XmlType(name = "someName")
@XmlEnum
@XmlJavaTypeAdapter(MyAdapter.class)
public enum MyGeneratedClass {
   // ...
}

XJC用于从scheme创建Java类。

1 个答案:

答案 0 :(得分:2)

尝试使用<xs:annotation>

例如:

<xs:simpleType name="myType">
    <xs:annotation>
       <xs:appinfo>
        <xjc:javaType name="com.seriouscompany.seriousproduct.MyType"
          adapter="com.seriouscompany.seriousproduct.MyAdapter" /> 
       </xs:appinfo>
    </xs:annotation>
    ....

这应该有所帮助。