嗨,当我点击客户端时,我收到了以下字符串响应。
我需要对其进行解码,以便可以在 Java 对象中设置值并将其发送回前端。请帮我将以下 xml 字符串转换为 jaxb 对象。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:ValidateAustralianAddressResponse xmlns:ns2="http://api.auspost.com.au/ValidateAustralianAddress:v1">
<Address><AddressLine>481 CHURCH ST</AddressLine><SuburbOrPlaceOrLocality>RICHMOND</SuburbOrPlaceOrLocality><StateOrTerritory>VIC</StateOrTerritory><PostCode>3121</PostCode><DeliveryPointIdentifier>55461002</DeliveryPointIdentifier><Country><CountryCode>AU</CountryCode><CountryName>Australia</CountryName></Country></Address>
<ValidAustralianAddress>true</ValidAustralianAddress>
</ns2:ValidateAustralianAddressResponse>
最佳答案
元数据
由于只有根元素是命名空间限定的,因此您只需在 @XmlRootElement
注释上设置命名空间参数。
@XmlRootElement(name="ValidateAustralianAddressResponse", namespace="http://api.auspost.com.au/ValidateAustralianAddress:v1")
public class ValidateAustralianAddressResponse {
}
了解更多信息
将 XML 转换为对象
您可以将 XML String
包装在 StringReader
的实例中并对其进行解码。
了解更多信息
关于java - 如何将带有命名空间的 XML 字符串解码为 Java 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18537303/