【发布时间】:2014-12-01 23:38:46
【问题描述】:
我正在使用xjc 将一组 XSD 编译为 Java 类。我希望能够覆盖给定简单类型的数据类型定义。 XSD sn-p 是:
<xs:simpleType name="CPT-DateTime">
<xs:annotation>
<xs:appinfo>Can be specified as a integer number or as xs:dateTime</xs:appinfo>
</xs:annotation>
<xs:union memberTypes="xs:unsignedLong xs:dateTime"/>
</xs:simpleType>
这导致(毫不奇怪)CPT-DateTime 类型的元素在生成的 Java 类中被定义为 String,例如
public class CcReportTrainInitialization {
...
@XmlElement(required = true)
protected String time;
...
public String getTime() {
return time;
}
public void setTime(String value) {
this.time = value;
}
...
我希望time(在本例中)的数据类型是日期时间特定类型,例如XMLGregorianCalendar 或类似的东西:
public class CcReportTrainInitialization {
...
@XmlElement(required = true)
protected XMLGregorianCalendar time;
...
public XMLGregorianCalendar getTime() {
return time;
}
public void setTime(XMLGregorianCalendar value) {
this.time = value;
}
...
这可能吗?
我一直在尝试绑定文件,但我不确定它是否可行。有什么建议吗?
【问题讨论】: