如何使用Namespace将XML String解组为Java Object

时间:2013-08-30 16:10:38

标签: java xml jaxb

嗨我在点击客户端时得到以下响应作为字符串。

我需要解组它以便我可以在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>

1 个答案:

答案 0 :(得分:2)

元数据

由于只有根元素是名称空间限定的,您只需要在@XmlRootElement注释上设置名称空间参数。

@XmlRootElement(name="ValidateAustralianAddressResponse", namespace="http://api.auspost.com.au/ValidateAustralianAddress:v1")
public class ValidateAustralianAddressResponse {
}

了解更多信息


将XML转换为对象

您可以将XML String包装在StringReader的实例中并解组该文件。

了解更多信息