【发布时间】:2013-12-18 05:35:09
【问题描述】:
我创建了三个 JAXB 类:Home , Person , Animal。 Java 类
Home 有变量 List<Object> any 可能包含 Person 和/或 Animal 实例。
public class Home {
@XmlAnyElement(lax = true)
protected List<Object> any;
//setter getter also implemented
}
@XmlRootElement(name = "Person") // Edited
public class Person {
protected String name; //setter getter also implemented
}
@XmlRootElement(name = "Animal") // Edited
public class Animal {
protected String name; //setter getter also implemented
}
/* 解组后 */
Home home ;
for(Object obj : home .getAny()){
if(obj instanceof Person ){
Person person = (Person )obj;
// .........
}else if(obj instanceof Animal ){
Animal animal = (Animal )obj;
// .........
}
}
我需要实现"Home.any" List 变量中保存的Person or Animal 对象,但"Home.any" List 的内容是com.sun.org.apache.xerces.internal.dom.ElementNSImpl 的实例而不是Animal or Person。
那么有没有办法实现Animal or Person实例保存在"Home.any" List中的xml中。
【问题讨论】:
标签: java xml-parsing jaxb eclipselink jaxb2