使用Jaxb的Unmarshal Number忽略实际类型

时间:2014-11-11 22:58:33

标签: java xml jaxb

我有一个类型为Number的字段。我使用它是因为它可以是Double或Integer。

XML生成似乎很好,它包含该字段的真实类(Double):

<thresholdValue xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:double">0.2</thresholdValue>

我尝试在课堂上添加一些注释但没有效果:

@XmlRootElement(name = "numericAlarmCfgModel")
@XmlType
@XmlSeeAlso({ Number.class, Double.class, Float.class, Integer.class, Short.class, Long.class })
@XmlAccessorType(XmlAccessType.FIELD) 
public class MyNewClass extends MyClass {
private Number thresholdValue;
...}

当Unmarshalling我有这个例外时:

javax.xml.bind.UnmarshalException: Unable to create an instance of java.lang.Number

我正在使用JAXB 2.2.11和Java 7.

0 个答案:

没有答案