Skip to content

DXA errors with Jackson Databind 2.18.3 #64

@righteousboy07

Description

@righteousboy07

Recently upgraded an app that utilizes dxa-tridion-provider:2.3.7 to spring boot 3.4.4 and noticed some interactions in the GraphQLProvider that appear to be tied to behavior introduced in jackson-databind:2.18.3

When I receive a response from our Tridion CMS endpoint that has empty or null data for the raw content, (IE: {"data":{"page":null}}), I receive a null pointer exception.

This seems to be tied to GraphQLProvider's loadPage method relying on unintended behavior from Jackson, the response is mapped to a MissingNode which prior to 2.18.2 would throw an error when passed to mapToType's treeToValue call. This would signal to the provider to re-try the call with the page request normalized (normalizePathToDefaults) which in our implementation would then succeed.

This behavior was fixed in this change to Jackson and the Tridion DXA provider now proceeds with a null object which will then fail when attempting to build the page model.

Is this something that's been identified as a fix for the next DXA provider release? Currently I've downgraded Jackson to 2.18.2 for the time being to be able to pull in other dependency upgrades as part of boot 3.4.4. Is there any way for me to use 2.18.3 for the time being while fixing this behavior?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions