次のような REST サービスから XML を取得しています。
<entity>
<foo>
<count>1</count>
<date>1970-01-01</date>
<margin>78.67</margin>
</foo>
<bar>
<count>2</count>
<date>1450-09-17</date>
<margin>24.56</margin>
</bar>
<baz>
<count>11</count>
<date>1968-11-12</date>
<margin>98.76</margin>
</baz>
</entity>
そして、次のクラス Entity.java で解析しています。
@XmlRootElement(name = "entity")
@XmlAccessorType(XmlAccessType.FIELD)
public class Entity implements Serializable {
@XmlElements({
@XmlElement(name="foo"),
@XmlElement(name="bar"),
@XmlElement(name="baz")
})
private List<EntityElement> entityElements;
....
次のような EntityElement クラスを使用します。
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class EntityElement implements Serializable {
@XmlElement(required = true)
private int count
@XmlElement(required = true)
private String date;
@XmlElement(required = false)
private long margin;
....
これはすべて期待どおりに機能し、EntityElements のリストを取得します。私がやりたいのは、名前フィールドを追加して、見つかった要素の名前 (foo、bar、または baz) を入力することですが、これを行う方法がわかりません。ヘルプや提案をいただければ幸いです。