【发布时间】:2019-10-20 21:46:56
【问题描述】:
我正在尝试从我的基于 CXF 版本 3.1 的 Java REST 服务获取 XML 响应,格式如下。
<root>
<element a="X" b="1.2" c="3.2"/>
<element a="Y" b="5.5" c="1.4"/>
<element a="Z" b="54.2" c="55.4"/>
</root>
我已将我的 DTO 定义如下:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name="root")
public class Root{
private List<Element> element;
---getters setters and no arg constructor--
}
@XmlType(propOrder = {
"a","b","c"})
@XmlRootElement(name="element")
public class Element{
@XmlAttribute
private String a;
@XmlAttribute
private Double b;
@XmlAttribute
private Double c;
---Getter Setter---
}
我没有覆盖任何映射器,所以默认的 CXF JAXB xml 映射器正在运行。
但我的 xml 响应是:-
<root>
<element>
<element>
<a>X</a>
<b>1.2</b>
<c>3.2</c>
</element>
<element>
<a>Y</a>
<b>5.5</b>
<c>1.4</c>
</element>
<element>
<a>Z</a>
<b>54.2</b>
<c>55.4</c>
</element>
</element>
</root>
我也检查了 Moxy API 选项,但我无法使用。有人可以帮忙看看我的代码有什么问题或缺少什么吗?
提前致谢
【问题讨论】:
-
@bdoughan,对此有何建议?
标签: java xml jaxb cxf xml-attribute