【发布时间】:2012-05-21 19:00:55
【问题描述】:
我写了以下内容:
ObjectMapper oMapper = new ObjectMapper();
Object oPOJO = null;
String p_strJSON = "{\"name\" : { \"first\" : \"Joe\", \"last\" : "
+ "\"Sixpack\" },\"gender\" : \"MALE\",\"verified\" : \"false\","
+ "\"userImage\" : \"Rm9vYmFyIQ==\"}";
try
{
oPOJO = oMapper.readValue(p_strJSON, User.class);
}
catch(Throwable oThrowable)
{
System.out.println(oThrowable.getMessage());
throw new RuntimeException(oThrowable);
}
并且在执行时收到以下异常消息:
无法从 [Source: java.io.StringReader@3eca90; 的 START_OBJECT 令牌中反序列化 java.lang.String 的实例;行:1,列:1]
我是否错误地使用了 Jackson?我正在使用 1.9.6 JAR - 我是否需要在 claspath 中设置任何内容?
【问题讨论】:
-
你的 p_clsType 类是什么?
-
很抱歉 - 现在可以使用示例了
-
您在用户中的名称对象是否定义为字符串一个“名称”对象
-
如果没有实现 User 类,很难说。您的示例来自此 Jackson in 5 minutes 页面。您的用户与那里的用户相同吗?
-
缺少用户对象使这个问题变得毫无价值,并且无法以有用的方式回答。