尝试解析格式错误的xml(我无法更改)时遇到以下问题,我不知道该怎么做。
<error type="a_type_one " rootCauseType="rootCause">
some text here
<cause type="a_type_two">
description of the error cause here
<cause type="a_type_three">again description of the error</cause>
</cause>
</error>
我只想将所有原因错误映射到java bean中(因为标记是递归构造的),因此我创建了这些类。
@XmlRootElement(name = "error")
@XmlAccessorType(FIELD)
@Data
@JsonInclude(NON_NULL)
@NoArgsConstructor
public class Error {
@XmlAttribute private String type;
@XmlAttribute private String rootCauseType;
@XmlElement private Cause cause;
}
还有
@XmlRootElement(name = "cause")
@XmlAccessorType(FIELD)
@Data
@NoArgsConstructor
public class Cause {
@XmlElement
private Cause cause;
@XmlAttribute private String type;
// here needs to map the error description
private String description;
public Cause(String description) {
this.description = description;
}
}
我能够在所有标签中映射type和rootCauseType,但是我无法获得它们之间的错误描述。我的意思是“此处描述错误原因”和“再次描述错误”。 我的想法是将其映射到描述或某些String属性...
有什么想法吗? 预先感谢。