eclipse-ee4j / jersey

Eclipse Jersey Project - Read our Wiki:
https://github.com/eclipse-ee4j/jersey/wiki
Other
688 stars 351 forks source link

Add ability to disable DefaultJacksonJaxbJsonProvider #5696

Open marekkrk opened 1 month ago

marekkrk commented 1 month ago

Currently JAXB provider is always registered unless Jackson's JAXB provider is already registered.

` if (!config.isRegistered(JacksonJaxbJsonProvider.class)) {

        if (registerExceptionMappers) {
            // add the default Jackson exception mappers
            context.register(JsonParseExceptionMapper.class);
            context.register(JsonMappingExceptionMapper.class);
        }

        if (EntityFilteringFeature.enabled(config)) {
            context.register(JacksonFilteringFeature.class);
            context.register(FilteringJacksonJaxbJsonProvider.class, MessageBodyReader.class, MessageBodyWriter.class);
        } else {
            context.register(DefaultJacksonJaxbJsonProvider.class, MessageBodyReader.class, MessageBodyWriter.class);
        }
    }

`

This behaviour should be configurable so that DefaultJacksonJaxbJsonProvider does not need to be present in native Graal images.

jansupol commented 1 month ago

Currently JAXB provider is always registered unless Jackson's JAXB provider is already registered. This behaviour should be configurable so that DefaultJacksonJaxbJsonProvider does not need to be present in native Graal images.

Do I understand correctly that you disable (javax.xml.bind) JAX-B by bringing in Jackson?