【发布时间】:2017-03-13 14:47:44
【问题描述】:
我尝试将以下 XML 文件(SOAP 响应)映射到 Java 对象:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:AffaireByTiersResponse xmlns:ns2="http://service.hibernate.com/">
<Affaire>
<code_produit>Cred</code_produit>
<id>1</id>
<montant_fin>2000.0</montant_fin>
<id_tier>1</id_tier>
</Affaire>
<Affaire>
<code_produit>Cred</code_produit>
<id>2</id>
<montant_fin>25000.0</montant_fin>
<id_tier>1</id_tier>
</Affaire>
</ns2:AffaireByTiersResponse>
</soap:Body>
</soap:Envelope>
为了编组文件,我只需要保留标签<AffaireByTiersResponse> 作为根元素并将其名称更改为<Affaires>。
最好的方法是什么?
【问题讨论】:
-
“映射到 Java 对象”...您是指 JAXB 还是类似的?
-
是的,我打算使用 JAXB Unmarshaller(我已经测试过了)
-
AFAIK,您可以使用Document#renameNode 重命名节点。然后 Unmarshaller 可以解组该元素。虽然不确定细节。所以你必须自己弄清楚。