反序列化 RestTemplate 中的地图列表

Deserialize List of Maps in RestTemplate

我试图在这里找到解决方案,但没有成功。
我有序列化一些数据和 returns xml 形式的外部服务:

<linked-list>
  <linked-hash-map>
     <entry>
       <string>key1</string>
       <string>value</string>
     </entry>
     <entry>
       <string>key2</string>
       <string>value2</string>
     </entry>
  </linked-hash-map>
  <linked-hash-map>
     ....
  </linked-hash-map>
</linked-list>

基本上是 returns 地图列表 List<Map<String, String>>

在我的应用程序中,我需要使用 Spring 的 RestTemplate 对其进行反序列化。
依靠默认的消息转换器,我得到的只是地图列表,但每个地图只包含一个带有键 "entry" 的元素,该值似乎是原始 (xml) 地图中的最后一个元素。

有没有办法使用一些现有的转换器来实现 "out of the box",或者我需要一个自定义转换器吗?并且还使用自定义,如何绕过 ex 的反序列化。 MappingJackson2XmlHttpMessageConverterMappingJackson2HttpMessageConverter ?

最简单的解决方案是将此资源作为 xml 字符串获取,然后 convert/deserialize 使用例如 Xstream

XStream xStream = new XStream();
xStream.setMode(XStream.NO_REFERENCES);
List list = (List) xStream.fromXML(xmlString);