在不知道根元素的情况下,我无法实现 unmarshall XML . 例如 .
<foo>
<bar/>
</foo>
要么
<bar>
<bar/>
</bar>
等等...
我想在类上映射解组结果:
// @XmlRootElement ??
public class Container
implements Serializable
{
private Bar bar;
}
我总是被要求修复 @XmlRootElement
.
我搜索了如何在运行时设置@XmlRootElement但没有成功 . 任何的想法?
我在Spring Batch上下文中,我可以使用我选择的unmarshaller .
注意:我不能使用 @XmlElementDecl
或 ObjectFactory
,如here所示,因为 I don't know the name of the possibles root names .
2 回答
改编他的方法:https://stackoverflow.com/a/33824472/181336
有用!
哪个XML传递确实有一个根元素,你提到的xml有两个文件
要么
所以在这里你有两个根名称foo或bar,所以为每个创建两个类,如果它将调用该类的根名称