I am trying to get an XML response from my CXF version 3.1 based REST service in java in the following format.
<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>
I have defined my DTO as below :
@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---
}
I have not overriden any mapper, so default CXF JAXB xml mapper is in action.
But my xml response is coming as :-
<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>
I have checked the Moxy API option as well, but that i cant use. Can someone please help that what is wrong with my code or what is missing ?
Thanks in advance