0
我有一个通用的(POJO-)容器与客户分享统计数据:新泽西不能解组java.lang.Number中
@XmlRootElement
public class StatsSeries implements Serializable {
private TreeMap<Date, Number> timeSeries;
/* accessor methods */
}
根据数据,服务器存储Long
,Integer
或它Double
,这就是为什么我使用抽象java.lang.Number
。
编组站工作正常,并表示具体类的提示都包含在数据:
"timeSeries": {
"entry": [
{
"key": "2012-08-20T00:00:00Z",
"value": {
"$": "24",
"@type": "xs:long"
}
},
....
]
}
或者在XML表示:
<timeSeries>
<entry>
<key>2012-08-20T00:00:00Z</key>
<value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:long">24</value>
</entry>
...
</timeSeries>
当试图来解读这一点,我得到一个javax.xml.bind.UnmarshalException: Unable to create an instance of java.lang.Number
。我看到this question,但它不帮助我。我如何注释java.lang.Number
?还有其他建议吗?
更新:纵观JAXB-890,据我所知,应该固定或者在JDK 1.7或使用com.sun.xml.bind:jaxb-impl:2.2.6
- 既不是为我工作。