1

我有以下xml:

<?xml version="1.0"?>
<configuration>
</configurations>

当我使用 XMLMapper 读取此 xml 时,如下所示:

XmlMapper xmlMapper = new XmlMapper();
List<Map<String, Object>> entries = xmlMapper.readValue(new File(xmlFileName), List.class);

我得到以下调用堆栈的空指针异常:

java.lang.NullPointerException at com.fasterxml.jackson.databind.deser.std.UntypedObjectDeserializer.deserialize(UntypedObjectDeserializer.java:162) at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:227 ) 在 com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:23) 在 com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:204)。 com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2052) 上的 fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:2993) .... ....

即使 XML 在标签之间没有值,它仍然有效,所以我认为该函数应该返回空列表而不是 NPE。

4

1 回答 1

0

我发现这是实现中的一个错误,暂时我安全地处理了异常来解决这个问题。

于 2014-05-22T21:41:50.853 回答