spring-projects / spring-projects/spring-data-commons
WarningMixing/WrappingMixing in PageModule overrides user defined Jackson annotations.
Open
@odrotbohm is already working on this.
Since Aug 15, 2024.
status: feedback-provided
- Dominant language
- Java
- Stars
- 838
- Forks
- 730
- PR merge metrics
- No merged PRs in 30d
Description
Encountered while migrating Spring Boot from 3.2.7 to 3.3.1.
If custom class has extended PageImpl, the annotations, such as @JsonIgnoreProperties, does not work because of WarningMixing or WrappingMixing is now registered.
@JsonIgnoreProperties(ignoreUnknown = true, value = {"pageable"})
public class RestPage<T> extends PageImpl<T> {
...
}
The only way to fix this is to override the mixin:
objectMapper.addMixIn(PageImpl.class, RestPageMixin.class);
public interface RestPageMixin {
@JsonIgnore
Pageable getPageable();
}
Is it a bug or should we move to PagedModel?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.