fix: json patch throw error when remove null property #15904
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
https://dhis2.atlassian.net/browse/DHIS2-16299
Issue
Problem in JsonPatchManager:
The
JsonPatchManager
relies on the presence of properties within aJsonNode
to validate patch paths. However, our Jackson ObjectMapper does not serialize properties withnull
values intoJsonNode
. This leads to an issue where patch paths referencingnull
properties are incorrectly deemed invalid, despite these properties existing in the original object.Fix
JsonpPatchManager
before applying the patch operators.RemoveOperation
and related tests.Test
Validation Procedure:
Initial Setup:
Begin by creating a new UserGroup instance where the
code
property is intentionally set tonull
.Patch Request:
Execute a JSON patch request to update the
code
property. Use the followingcurl
command:Confirm that the
code
property is correctly updated to "bonthe".