we are using JSR 303 validations. But regarding the NotNull validation, the behaviour differs from the other validations.
On a validation-violation the given message key of NotNull isn't used.
We recognized, that the method FormComponent.validate() contains a condition to check if the required flag of a FormComponent is set. If the flag is set to true NotNull JSR validations aren't validated.
On the other hand there is a default validator org.apache.wicket.bean.validation.PropertyValidator (wicket-bean-validation) which sets the required field to true if there is a NotNull validation added to a field.
If we want to get full JSR 303 support, we need to implement INullAcceptingValidator. But this requires that the required field of FormComponent will always be false.
The problem is, that we use the required field beside validation for some other functionality in the rendering phase.
It would be very helpful, if Wicket completly supports JSR 303 without having a restriction on the usage of the FormComponent.
Do you have a suggestion regarding this issue?