java如何整理节点或文档字段?
我试图用这样一个领域来马歇尔一个班级:
@XmlElement
private Document content;
(JAXB抱怨它无法封送接口,但这不是重点。)
我希望导入由content
表示的DOM树,并将其插入结果文档,因此我最终会得到如下结果:
<stuff>
<myObject>
<content>
(root node of Document value of content field here)
</content>
...
这可能吗?如果可能,怎么可能
提前谢谢
# 1 楼答案
可以将字段/属性类型从
Document
更改为Object
,以消除与接口相关的异常。当JAXB不知道要构建什么类型的对象时,它会将其视为DOM域模型
根
演示代码
输入。xml
演示
输出
在这里,根元素是与属性相对应的元素,而不是嵌套文档
更新
下面是一种方法,你可以利用
@XmlElementWrapper
和@XmlAnyElement
来获得你想要的行为。我用@XmlAccessorType(XmlAccessType.FIELD)
来保持场上所有的魔法,而不需要改变属性根
输出
下面是运行相同演示代码的新输出。元素名现在就是您所期望的