Java org.codehaus.jackson.map.JsonMappingException使用ObjectMapper
我正在尝试使用对象映射器调用我的REST服务Java org.codehaus.jackson.map.JsonMappingException使用ObjectMapper,java,jackson,Java,Jackson,我正在尝试使用对象映射器调用我的REST服务 url = new URL("http://phx5qa01c-8539.host.com:8080/bservice/BService/v1/getSimpleString"); String str = mapper.readValue(url, String.class); 这个url将返回这个字符串- {属性:[{nm:“SELLERS2”vt:“java.util.Map”状态: “成功”jsonValue: “{”lv:[{”v:{“
url = new URL("http://phx5qa01c-8539.host.com:8080/bservice/BService/v1/getSimpleString");
String str = mapper.readValue(url, String.class);
这个url将返回这个字符串-
{属性:[{nm:“SELLERS2”vt:“java.util.Map”状态:
“成功”jsonValue:
“{”lv:[{”v:{“regSiteId”:null,“userState”:null,“userId”:609},“cn”:1}],“lmd”:20130206211109}”
}]}
当我在浏览器上尝试该URL时,我会返回上面的字符串。但只要我在代码中做同样的事情。我在下面得到了这个例外-
org.codehaus.jackson.map.JsonMappingException:无法反序列化
START_对象标记中的java.lang.String实例
有人能帮我解释一下为什么我会在下面遇到这个异常。Jackson正在尝试将json反序列化为新的字符串对象,但属性不匹配,例如,它找不到方法string.setAttributes()。“out-of-START_-OBJECT-token”是任何反序列化错误的总括,堆栈跟踪中可能有更多信息 尝试: 或者,如果您确实需要字符串,请不要使用Jackson,而是使用标准java代码读取字符串的url,或者:
谢谢你的帮助。当我尝试您的第一种方法时,我得到了这个异常-
java.io.EOFException:由于输入结束,没有要映射到对象的内容
?你知道为什么会这样吗?
Map myMap = mapper.readValue(url, Map.class);
String str = IOUtils.toString(url);