[
https://issues.apache.org/jira/browse/WICKET-5656?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14106750#comment-14106750
]
Andrea Del Bene commented on WICKET-5656:
-----------------------------------------
Pretty weird...ConstraintIterator and PropertyValidator work well and they find
NotNull even when it is nested. But when NotNull is directly applied its Group
array is empty, while it contains 'Default' when it is nested in another
constraint.
For now I just improved the if condition inside PropertyValidator.isRequired
(see commit), so we could make it for the next release.
> PropertyResolver does not scan for NotNull in annotation tree
> -------------------------------------------------------------
>
> Key: WICKET-5656
> URL: https://issues.apache.org/jira/browse/WICKET-5656
> Project: Wicket
> Issue Type: Bug
> Components: wicket-bean-validation
> Affects Versions: 6.16.0
> Reporter: Thibault Kruse
> Assignee: Igor Vaynberg
>
> When annotating a field of a bean with e.g.
> org.hibernate.validator.constraints.NotEmpty, this implies
> javax.validation.constraints.NotNull, but PropertyValidator only checks for
> the annotations immediately on the filed not the tree of annotations. As a
> result Wicket does not mark the field as required in the UI, which it should.
> Also PropertyResolver.findNotNullConstraints() is not even protected, so
> cannot be patched in a simple way.
> So as a solution I suggest changing findNotNullConstraints() to be protected
> and rather be something like findConstraints(filter), or
> findConstraints(clazz), and then in that method method recursively invoking
> getComposingConstraints to get all constraints, but collecting only those of
> interest. Possibly some care needs to be taken to prevent infinite recursion
> where constraints are composed of each other (if that compiles).
--
This message was sent by Atlassian JIRA
(v6.2#6252)