12

我的 IDE 给了我该Unhandled Exception com.fasterxml.jackson.databind.JsonMappingExceptionmapper.readValue的错误

ObjectMapper mapper = new ObjectMapper();
try {
    if (response.isEmpty()) {
        //Http 204 (No Content) returned from MCC
        //We should handle this differently
        user = new User();
    } else {
        user = mapper.readValue(response, User.class);
    }
} catch (IOException ioe) {
    logger.log(Level.SEVERE, ioe.getLocalizedMessage());
}
return user;

我试过捕捉,JsonMappingException但它并没有使错误消失。有什么想法吗?

4

7 回答 7

11

当我只添加jackson-mapper-asljar 时,我遇到了这个问题。当我添加jackson-core-asljar 时,它起作用了。

杰克逊 2 也是如此。如果仅包含jackson-databind. 你也需要包括在内jackson-core

于 2015-03-03T06:23:15.870 回答
2

JsonMappingExceptionextends IOException,所以你的 IDE 本身就有一些更深层次的麻烦——也许库导入搞砸了?

于 2013-01-03T19:01:49.233 回答
2

我遇到了同样的问题,因为 org.codehaus.jackson.map.JsonMappingException 扩展了 JsonProcessingException (不是任何 Throwable 直接)并且包中缺少这个。在做了一些研究之后,我直接下载了 jars(而不是使用 Maven)并手动将它们添加到类补丁中:

  • 杰克逊注释-2.1.2
  • com.fasterxml.jackson.core
  • com.fasterxml.jackson.databind

这三个包的组合解决了这个问题。

于 2015-12-03T11:20:20.917 回答
1

我遇到过同样的问题。该类继承的类似乎JsonMappingException不在JAR文件中。我刚刚恢复到没有问题的 1.9 版。

于 2013-02-17T11:59:56.717 回答
1

我有同样的问题,当我添加json-core时,它​​对我有用!

于 2015-11-04T08:07:45.493 回答
0

你也试过这个吗?

user = mapper.readValue(response.getEntity(String.class),User.class);

PS:假设,response是类型com.sun.jersey.api.client.ClientResponse

于 2012-12-31T18:34:36.217 回答
0

添加jackson-core-asl.jar,它会工作

于 2018-04-17T18:51:55.577 回答