[
https://issues.redhat.com/browse/WFLY-13000?page=com.atlassian.jira.plugi...
]
Dominik Derwiński commented on WFLY-13000:
------------------------------------------
Perhaps jaxrs / resteasy module should pull by default only smallest possible subset of
libraries, with all others being optional for the user to add. It's not easy to
exclude implicit dependencies (and one is generally not aware of the problem until the app
is deployed).
Put an end to problems with Jackson caused by jaxrs subsystem
-------------------------------------------------------------
Key: WFLY-13000
URL:
https://issues.redhat.com/browse/WFLY-13000
Project: WildFly
Issue Type: Feature Request
Components: REST
Affects Versions: 18.0.1.Final
Reporter: Dominik Derwiński
Assignee: Alessio Soldano
Priority: Major
There is a serious problem with using bundled (inside ear) Jackson JSON library in
version different than the one included inside WildFly. There are dozens of threads of
people trying to solve this issue by manually upgrading modules in WildFly, excluding
certain Jackson modules pulled by jaxrs and including them again in custom modules without
exporting classes, to (finally) excluding the whole jaxrs subsystem, and using different
implementation of JAXRS. Without doing so one can end with the following:
{noformat}
java.lang.NoSuchMethodError: 'com.fasterxml.jackson.core.TSFBuilder
com.fasterxml.jackson.core.JsonFactory.builder()'
{noformat}
or
{noformat}
java.lang.IllegalAccessError: class com.fasterxml.jackson.core.JsonFactoryBuilder tried
to access private field
com.fasterxml.jackson.core.JsonFactory.DEFAULT_ROOT_VALUE_SEPARATOR
(com.fasterxml.jackson.core.JsonFactoryBuilder is in unnamed module of loader
'deployment.xyz-ear-1.ear' @b6d0dc5; com.fasterxml.jackson.core.JsonFactory is in
unnamed module of loader 'com.fasterxml.jackson.core.jackson-core(a)2.9.10'
@68fc71cf)
{noformat}
Could this be fixed somehow by not exporting Jackson classes from
jaxrs/resteasy/jackson2-provider modules? Why do they even get priority before classes
from ear classloader?
Found these on the net while trying to solve my issue:
http://alloutfornoloss.com/exclude-jackson-module-wildfly/
https://stackoverflow.com/questions/37616096/wildfly-10-how-to-use-a-newe...
https://stackoverflow.com/questions/38173460/dependency-conflict-loading-...
https://stackoverflow.com/questions/47838240/jboss-resteasy-custom-jackso...
https://stackoverflow.com/questions/56780117/unknown-conflict-causing-jav...
https://stackoverflow.com/questions/20683843/jackson-annotations-ignored-...
https://dzone.com/articles/jboss-modules-suck-it%E2%80%99s
https://forum.camunda.org/t/camunda-json-marshalling-and-jsonignore/271/18
--
This message was sent by Atlassian Jira
(v7.13.8#713008)