为什么JAXBContext只是得到基础对象类A扩展B,只得到A

时间:2015-09-18 14:16:08

标签: java xml jaxb classcastexception

com.e1.ewx.base.model.weixinapi.Event延伸com.e1.ewx.base.model.weixinapi.BaseMsg

JAXBContext context = JAXBContext.newInstance(Event.class);  
Unmarshaller unmarshaller = context.createUnmarshaller();
Event eee = (Event)unmarshaller.unmarshal(new StringReader(xmlStr));  
System.out.println(eee.getMsgType());

例外:

Exception in thread "main" java.lang.ClassCastException: com.e1.ewx.base.model.weixinapi.BaseMsg cannot be cast to com.e1.ewx.base.model.weixinapi.Event
    at Test.main(Test.java:49)

为什么呢?

1 个答案:

答案 0 :(得分:0)

似乎xmlStr是BaseMsg实例的表示,而不是Event实例。