Skip to content

feat: resolve annotations that are within Optional parameters - #3331

Merged
bnasslahsen merged 1 commit into
springdoc:mainfrom
Mattias-Sehlstedt:resolve-constraint-annotation-within-optional
Sep 6, 2026
Merged

feat: resolve annotations that are within Optional parameters#3331
bnasslahsen merged 1 commit into
springdoc:mainfrom
Mattias-Sehlstedt:resolve-constraint-annotation-within-optional

Conversation

@Mattias-Sehlstedt

Copy link
Copy Markdown
Contributor

Add so that a validation constraint within an Optional in a parameter is introspected and applied to the schema

@bnasslahsen
bnasslahsen merged commit 03db9bf into springdoc:main Sep 6, 2026
1 check passed
bnasslahsen added a commit that referenced this pull request Sep 6, 2026
JsonNullable<T> now renders as the wrapped value, nullable unless a non-null
constraint applies, and no longer becomes required merely because such a
constraint is present - the wrapper exists precisely to tell an omitted property
apart from an explicit null. The converter is registered only when
jackson-databind-nullable is on the classpath.

The pull request's tests were renumbered to app271, since app270 was taken by
PR #3331, and the jackson-databind-nullable version moved to a property in the
root pom.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bnasslahsen pushed a commit that referenced this pull request Sep 6, 2026
Constraints written on the type argument of an Optional parameter were dropped.
Annotations are now read from every parameter's annotated type, through a
guarded accessor that returns null instead of throwing when the method
parameter has no index.

Backport of PR #3331.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Mattias-Sehlstedt
Mattias-Sehlstedt deleted the resolve-constraint-annotation-within-optional branch September 6, 2026 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants