当我试图解析以前用Jackson生成的一些JSON时,我得到了这个错误。我像这样生成JSON
String ret = "";
ret = mapper.writeValueAsString(message.getPayload());
message.setPayload(ret);
其中Message.getPayload()是一个HashMap,在这个实例中包含两个字符串和一个各种对象的列表。这将创建以下格式错误的JSON
{
"user" : "john d example",
"items" : [ {
"val" : 99.5,
"id" : "phone",
"qty" : 1
}, {
"val" : 15.5,
"id" : "wine",
"qty" : 4
} ],
"address" : "123 example street"
}
Map<String, Object> ret = new HashMap<String, Object>();
String s = (String)message.getPayload();
ret = mapper.readValue(s, new TypeReference<Map<String, String>>(){});
typereference
应为typereference
。Jackson试图将值解析为字符串而不是列表,因为这是基于您传入的类型推理所期望的。
商店、地址和鞋的结构是:(我省略了getters和setters): 我已经在这里和谷歌上看过了,但仍然不知道我在这一点上错过了什么。 任何回应都将大有帮助。
我正在利用Spring提供的这个很酷的东西:Spring RESTWebService(Spring的版本是3)。如果我从浏览器访问URL,我可以看到JSON响应,但是从客户端endpoint(Android应用程序)III收到这个错误消息: MyObject结构与服务器端应用程序的结构相同。
下面是POJO类: 主要功能如下:
我需要向网络服务发送帖子请求,但它在异常后返回。 实际服务器响应如下: 我根据以下内容发送请求 我的代码
我正在与jackson一起阅读Mailchimp的Mandrill API返回的JSON响应。对于API响应来说,该响应有点非常规,因为它在方括号内包含把手——一个对象列表。围绕此错误的其他堆栈溢出讨论涉及不在列表中的API响应。 我得到这个错误。。。 定义此响应对象的正确方法是什么? 我尝试用以下类型定义响应。都没有奏效。 @milchalk...如何准确地使用您的对象映射器建议与我目前调用AP