【发布时间】:2011-07-22 12:41:56
【问题描述】:
我有一堆 JAXB 注释类,它们有一个共同的字段,所以我把那个字段移到了一个超类中,就像这样
public class Base {
protected SomeType commonField;
}
@XmlRootElement(name = "foo") @XmlType(propOrder = { "commonField", "fooField" })
public class Foo extends Base {
private SomeOtherType fooField;
}
@XmlRootElement(name = "bar") @XmlType(propOrder = { "commonField", "barField" })
public class Bar extends Base {
private SomeOtherType barField;
}
现在,每当我编组Foo 或Bar 之一时,我都会收到IllegalAnnotationException 抱怨commonField 被列在propOrder 中但不在课堂上。从propOrder 注释中删除它一切正常,但我认为我应该列出所有映射的字段。我错过了什么?
【问题讨论】: