0
杰克逊使用的版本:2.3.0杰克逊错误处理
我有下面的代码
try {
ObjectMapper mapper = new ObjectMapper();
MenuItem[] menuItems = mapper.readValue(result, MenuItem.class);
return menuItems;
}
catch (Exception e) {
Log.error("Exception while parsing json", e);
}
POJO
public class MenuItem {
public String dataUrl;
}
JSON
[{
"dataUrl": ""
},
{
"dataUrl": []
}]
这是真的简化的示例牢记我对json具有零控制权。上面的json不解析,很可能是String解串器无法处理数组,至少这是非常合乎逻辑的。
继expcetion发生:com.fasterxml.jackson.databind.JsonMappingException:无法反序列化java.lang.String中的实例出START_ARRAY令牌
的问题是如何实现的,在一个项目的问题发生过什么在json中(如果json是有效的),它只是跳过一个项目,但解析其他项目。现在任何问题都只会导致不解析任何东西。我知道注释会忽略未知属性,但是可能会发生不同问题,并且在我的情况下会发生,并且最终导致出现空白页面而不是缺少5%内容的页面。
谢谢,这可能会工作,但如果你有你的模型中的对象hundrets,编写这样的分析器为他们每一个有点乏味,必须有一些通用的解决方案,我希望即使是一些非常简单的喜欢某处设置了旗帜,我找不到它。 –