与 Jackson 2.9.2 兼容的 Jersey 版本是什么

What are the Jersey versions compatible with Jackson 2.9.2

你能帮我解决这两个问题 queries/Issues :

任何曾在 Jackson 2.9.2 上工作过的人都可以告诉我 Jackson 2.9 的兼容 Jersey 版本是什么吗?2.I 我目前正在使用 Jersey 2.23.2,但它不适用于 Jackson 2.9。 2.I 出现以下错误:

[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) 总的来说,有没有什么方法可以找到 Jars.I 的组合 早些时候也遇到过这个问题,同时找到 Jersey 和 Spring jars.It 的正确组合将节省我和其他人很多时候都面临同样的问题,如果有人可以对此提供指导。

谢谢。

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

Jersey 通过 jersey-media-json-jackson extension module, which is released under the same version number as Jersey core modules. This extension module contains the auto-discoverable JacksonFeature that registers the JacksonJsonProvider class 支持 Jackson 将 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 module to your project and register the JacksonJsonProvider directly in your ResourceConfig or Application 实现。

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

[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