7

你能帮我解决这两个查询/问题吗:

任何在 Jackson 2.9.2 上工作过的人都可以告诉我 Jackson 2.9.2 的兼容 Jersey 版本是什么。我目前正在使用 Jersey 2.23.2,但它不适用于 Jackson 2.9.2。我收到以下错误:

[ERROR   ] SRVE0777E: Exception thrown by application class 'org.glassfish.jersey.servlet.WebComponent.serviceImpl:489'
javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.util.BeanUtil.okNameForSetter(Lcom/fasterxml/jackson/databind/introspect/AnnotatedMethod;)Ljava/lang/String;
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:489)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1290)

2)一般来说,有没有办法找到罐子的组合。我之前也遇到过这个问题,同时找到了泽西罐和弹簧罐的正确组合。如果有人可以指导,它将节省我和其他人面临同样问题的大量时间这个。

谢谢。

4

2 回答 2

6

截至 2017 年 11 月中旬,Jersey 的最新版本是 2.26。

Jersey 通过扩展模块支持 Jackson,该jersey-media-json-jackson扩展模块以与 Jersey 核心模块相同的版本号发布。JacksonFeature此扩展模块包含注册JacksonJsonProvider用于将 JSON 绑定到 Java 对象的类的自动发现。

在 2.26 版本中,此扩展依赖于 Jackson 2.8.4。在 2.23.2 版本中,它依赖于 Jackson 2.5.4。

BeanUtil.okNameForSetter(Annotated Method)方法在 Jackson 2.5 中已弃用,并已在 Jackson 2.9 中删除。


要支持最新版本的 Jackson,您可以去掉jersey-media-json-jackson扩展模块。

然后将jackson-jaxrs-json-provider模块添加到您的项目中并JacksonJsonProvider直接在您的ResourceConfigApplication实现中注册。

于 2017-11-13T00:47:47.973 回答
0

我收到与以下相同的错误:

[ERROR   ] SRVE0777E: Exception thrown by application class 'org.glassfish.jersey.servlet.WebComponent.serviceImpl:489'
javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: 
java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.util.BeanUtil.okNameForSetter(Lcom/fasterxml/jackson/databind/introspect/AnnotatedMethod;)Ljava/lang/String;

我能够解决上述问题

Jersey2 version: 2.23.2
Jackson version: 2.7.4
于 2018-08-07T19:41:20.337 回答