我有一个XML响应,需要将其转换为JSON。 XML包含对象列表,一个XMLAttribute注释和一个XMLValue注释。当我用XMLElement注释对象列表时,它给了我错误。
<Field type="SINGLE_SELECT" mandatory="false" identifier="singleSelect">
<HintText>Please select text</HintText>
<Label>text</Label>
<FieldSpecs>
<FieldSpec name="options">
<Option>10</Option>
<Option>20</Option>
<Option>30</Option>
</FieldSpec>
</FieldSpecs>
</Field>
<Field type="SINGLE_LINE" mandatory="false" identifier="singleLineText">
<HintText>some text</HintText>
<Label>text1</Label>
<FieldSpecs>
<FieldSpec name="minLength">3</FieldSpec>
<FieldSpec name="maxLength">25</FieldSpec>
</FieldSpecs>
</Field>
</Fields>
此处“ FieldSpecs”是一个类,它包含List(FieldSpec)规范 和具有以下字段的“ FieldSpec”类:
@XmlAttribute(name = "name")
private String name;
@XmlValue
private String value;
@XmlElement
private List<Option> options;
此处如果显示FieldSpec name="Option"
,则将显示选项列表,但是如果显示FieldSpec name="minlength/maxlength/etc"
,则应显示FieldSpec值。
我收到一条错误消息,提示XmlElement和XmlValue不能一起使用。在这种情况下,可以使用任何有关注释的想法在JAVA中对其进行解析??