我在Java项目中使用Jackson注释来解析来自服务器的XML响应。响应中有不同的标记(它们的名称事先未知)。
响应示例:
<?xml version='1.0' encoding='windows-1251'?>
<pay-response coding='UTF'>
<result SendToClient="0">OK</result>
<name SendToClient="1">UserName</name>
</pay-response>
在这种情况下,我们只有两个XML Tags
。
result
标签为值OK
,名称标签为值UserName
。
所有标签都具有属性:SendToClient
。
我正在尝试这样做,但不幸的是它没有解析
问题出在Item
类中。
@JacksonXmlRootElement(localName = "pay-response")
@JsonIgnoreProperties(ignoreUnknown = true)
@Getter
public class UniversalProviderVerifyResponse {
@JacksonXmlProperty(localName = "coding")
private String coding; // value is 'UTF'
@JacksonXmlElementWrapper(useWrapping = false)
private List<Item> elements;
@Getter
public class Item {
@JacksonXmlProperty
private String name; // want to be result and name
@JacksonXmlProperty(localName = "SendToClient", isAttribute = true)
private String client; // want to be 0 and 1
@JacksonXmlText
private String value; // want to be OK and UserName
}
}
有什么想法可以在不知道标签名称的情况下如何获取所有标签名称及其值? 还是有可能?