Какие версии Jersey совместимы с Jackson 2.9.2?

Не могли бы вы помочь мне с этими двумя вопросами / проблемами:

Может ли кто-нибудь, кто работал над Jackson 2.9.2, сообщить мне, какая версия Jersey совместима с Jackson 2.9.2. В настоящее время я использую 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) В общем, есть ли способ найти комбинацию Jars. Я столкнулся с этой проблемой раньше, также находя правильную комбинацию jar-файлов Jersey и Spring. Это сэкономит много времени мне и другим, сталкивающимся с одной и той же проблемой, если кто-то может помочь в решении этой проблемы. это.

Спасибо.


person javaguy    schedule 12.11.2017    source источник


Ответы (2)


По состоянию на середину ноября 2017 года самая последняя версия Джерси - 2.26.

Джерси поддерживает Джексона через расширение jersey-media-json-jackson модуль, выпущенный под тем же номером версии, что и основные модули Джерси. Этот модуль расширения содержит автоматически обнаруживаемый _2 _, который регистрирует JacksonJsonProvider для привязки JSON к объектам Java.

В версии 2.26 это расширение зависит от Jackson 2.8.4. В то время как в версии 2.23.2 это зависит от Jackson 2.5.4.

_ 4_ устарел в Jackson 2.5 и был удален в Jackson 2.9.


Для поддержки самой последней версии Jackson вы можете избавиться от _ 5_ модуль расширения.

Затем добавьте модуль jackson-jaxrs-json-provider в свой проект и зарегистрируйте JacksonJsonProvider прямо в ResourceConfig < / a> или Application.

person cassiomolin    schedule 13.11.2017

Я получаю ту же ошибку, что и ниже:

[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
person Amit Kaneria    schedule 07.08.2018