Не похоже, что Джексон используется JSON провайдером (как Клайв Биксби показывает в его ответ ). Те зависимости (библиотеки), которые вы говорите, у вас недостаточно. Они являются только основными зависимостями для Джексона. Jackson имеет библиотеку, поддерживающую JAX-RS, и, если вы используете Jersey, для библиотеки поддержки Jackson JAX-RS имеется оболочка Jersey.
Если вы используете Jersey 2. х, тогда вам нужна зависимость jersey-media-json-jackson
. После добавления зависимости вы должны зарегистрировать JacksonFeature
в конфигурации своего приложения на Джерси (либо в Интернете. xml, либо в ResourceConfig). В настоящее время, вероятно, есть какой-то другой JSON провайдер, которого вы используете, и вы его не знаете. Проверьте любую другую jersey-media-json-xxx
зависимость. Если у вас есть что-то кроме Джексона, то удалите его. Если jersey-media-json-jackson
является единственным провайдером, который у вас есть в classpath, вам не нужно регистрировать JacksonFeature
, по умолчанию будет использоваться тот, который используется.
Если вы используете Jersey 1.x, тогда зависимость равна jersey-json
. После добавления зависимости вам нужно установить для свойства com.sun.jersey.api.json.POJOMappingFeature
значение true в конфигурации вашего приложения (либо init-param с веб-интерфейсом. xml, либо в вашем ResourceConfig)
Примечание: Если вы добавляете jar-файлы вручную, а не используете менеджер зависимостей, такой как Maven, тогда потребуется немного больше усилий для определения всех необходимых jar-файлов, например jersey-media-json-jackson
или * 1025. * оба зависят от нескольких других банок.