【发布时间】:2010-09-14 11:45:25
【问题描述】:
我们正在使用 Jersey 连接到第三方。然后我们想将返回的 xml 提取到我们的类中。这实际上工作正常,除了 xml 中的一个节点位于子节点中。 这是返回的 xml:
<response>
...
<langISO>en</langISO>
<acquirerAmount>1000</acquirerAmount>
<acquirerCurrency>GBP</acquirerCurrency>
<subXml>
<authCode>122958</authCode>
</subXml>
</response>
请注意,authCode 节点位于子节点(称为 subXml)中。
OurResponse myriadResponse = response.getEntity(OurResponse.class);
这是我们的类,但它没有解析出 authCode
package com.xxx;
import javax.ws.rs.Consumes;
import javax.ws.rs.Path;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
@Consumes("application/xml")
public class OurResponse {
private String authCode;
@XmlElement(name = "subXml/authCode")
public String getAuthCode() {
return authCode;
}
@XmlElement(name = "subXml/authCode")
public void setAuthCode(String authCode) {
this.authCode = authCode;
}
}
【问题讨论】: