我有以下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);使用以下调用堆栈获得空指针异常:
com.fasterxml.jackson.databind.deser.std.UntypedObjectDeserializer.deserialize(UntypedObjectDeserializer.java:162),com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:227),com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:204),com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:23),com.fasterxml.jackson.databind,java.lang.NullPointerException。ObjectMapper._readMapAndClose(ObjectMapper.java:2993) at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2052) ..。……
即使XML在标记之间没有值,它仍然是有效的,所以我认为函数应该返回空列表而不是NPE。
发布于 2014-05-22 21:41:50
我发现它是实现中的一个bug,为了解决这个问题,我暂时安全地处理了异常。
https://stackoverflow.com/questions/23702640
复制相似问题