我希望转换一个看起来像这样的类......
public class Amenity {
public String id;
public String value;
}
使用JaxB注释进入以下XML:
<amenity id="id-string-here">value-string-here</amenity>
有谁知道在value
成员变量上使用什么注释来完成此任务?我到目前为止最接近的是:
@XmlRootElement
public class Amenity {
@XmlAttribute
public String id;
@XmlElement
public String value;
}
不幸的是,这种方法不允许我指定value
成员变量不应该呈现为自己的标记<value></value>
。
答案 0 :(得分:25)
我对此并不是百分之百确定,但尝试使用@XmlValue
注释而不是@XmlElement
。
答案 1 :(得分:4)
看起来这个问题是指文本节点而不是CDATA节点,但这里有一个关于EclipseLink JAXB(MOXy)如何处理CDATA的链接:
答案 2 :(得分:1)
Q值。如何让Marshaller生成CDATA块?
一个。 JAXB无法直接使用此功能,但您可以配置Apache Xerces-J XMLSerializer来生成CDATA块。有关更多详细信息,请查看JaxbCDATASample.java示例应用程序。
(顺便说一句,这不能回答你的特定问题,但由于问题标题具有误导性,这是jaxb CDATA
的第一个谷歌搜索结果,我回答了一个不同的问题)
答案 3 :(得分:0)
JAXB不支持对CDATA xml类型进行编组/编组。