Приложение CXF JAX-RS, которое у меня есть, использует Джексона для маршалинга POJO в JSON.Это работает по большей части, но на днях он потерпел неудачу с NPE при сортировке глубоко вложенного объекта.
После некоторого расследования я обнаружил, что Джексон был включен в Glassfish 3 (через Джерси) и после удаления jackson-core-asl.jar, jackson-jaxrs.jar, jackson-mapper-asl.jar
и jackson-xc.jar
все работало прекрасно.Я думаю, что в Jackson 1.7.1 (входит в GF3) была ошибка, которая была исправлена в версии, поставляемой с моим приложением (1.8).
Теперь вопрос в том, почему я вообще должен был это делать?Я бы подумал, что библиотеки, включенные в мои военные файлы, должны иметь преимущество перед любыми библиотеками в каталоге /modules
Glassfish.
Есть ли более чистый способ сделать это, чем удаление jar-файлов с сервера приложений?Возможно, есть другие приложения, которые зависят от этих jar-файлов ...
Кстати, проблема с контейнером GF2 по-прежнему существует, но я не могу найти никаких библиотек Джексона в папке /lib
(нет папки /modules
, как в GF3).Есть какие-нибудь подсказки о том, где Джексон может скрываться в GF2 (если вообще)?