4
解决具有混合内容的XML时出现问题。一个空间会丢失。该XML看起来是这样的:JAXB Moxy混合空白丢失
<text>rooms in <g>the</g> <g>Eldorado Hotel</g> on Broadway have a jacuzzi</text>
这是解组到:
- “客房”(与最后的空间)
- 与价值 '的'
- 一个对象对象值“埃尔多拉多酒店”
- “百老汇有按摩”(与初始空间)
一切都很好,但我错过了两个标签之间的空间。我需要保留这个空间!
简化映射会是这样的:
@XmlTransient
public abstract class AbstractText {
private List words;
@XmlMixed
@XmlElementRefs({
@XmlElementRef(type = WordGroup.class, required = false), // this is the <g> tag
@XmlElementRef(type = Word.class, required = false)
})
public List getWords() {
if (words == null) words = new ArrayList();
return words;
}
public void setWords(List words) {
this.words = words;
}
}
@XmlRoot
public class Text extends AbstractText{
}
映射不正是这样做的,但在一个XML文件(从AbstractText每一类inherinting可以有不同的孩子
真实。映射是:
<java-type name="dp.dc.exercise.model.Text">
<java-attributes>
<xml-element-refs java-attribute="words" xml-mixed="true">
<xml-element-ref type="dp.dc.exercise.model.text.Word" required="false"/>
<xml-element-ref type="dp.dc.exercise.model.text.WordGroup" required="false"/>
</xml-element-refs>
</java-attributes>
</java-type>
和everycase的伟大工程,但是当有2个标签,一前一后
。任何帮助将不胜感激:)
什么是你映射的样子喜欢? – 2014-12-02 12:56:00
编辑,提前致谢! – gatti 2014-12-02 14:16:04