是否有可能使用值AND元素呈现的JAXB元素?
我正在尝试渲染如下内容:
<thing>
<otherthing></otherthing>
This is some text
</thing>
知道可能甚至不是有效的XML,但不幸的是,我尝试呈现的内容需要它,并且不是可选的。
有一个值和元素给一个
IllegalAnnotationExceptions
。 最佳答案
您所显示的是完全有效的XML。具有text()
且element
子元素的元素称为mixed content。
使用@XmlMixed
JAXB批注而不是@XmlValue
表示元素是混合内容。
import java.util.*;
import javax.xml.bind.annotation.*;
@XmlRootElement
public class Thing {
private List<Object> mixedContent = new ArrayList<Object>();
@XmlElementRef(name="thing", type=Thing.class)
@XmlMixed
public List<Object> getMixedContent() {
return mixedContent;
}
public void setMixedContent(List<Object> mixedContent) {
this.mixedContent = mixedContent;
}
}