使用Jackson可以根据命名空间处理重复的xml标签吗?
下面的代码抛出一个JsonMappingException:多个字段代表属性“url”
private final ObjectMapper xmlMapper = new XmlMapper();
private static final String xml =
"<example xmlns:test='http://test.com/'>" +
"<test:url>www.namespace.com'</test:url>" +
"<url>www.url.com'</url>" +
"</example>";
@Test
public void parseXml() throws Exception {
Example example = xmlMapper.readValue(xml, Example.class);
assert example.namespaceUrl.equals("www.namespace.com");
}
public static class Example {
@JsonProperty("url")
public String namespaceUrl;
@JsonProperty("url")
public String url;
}
非常感谢!
答案 0 :(得分:2)
目前无法做到这一点 - 您不能使用仅按名称空间不同的属性。这不是一个基本的限制;也就是说,有了更多的工作,就可以得到支持;但这是目前的限制。