A domain model model2 may extend a domain model model1 and have JSR303 annotations on one or more getter to override constraints. In such a case, DefaultPropertyResolver cannot detect the right domain model implementation since direct property analysis is done first. Indeed, with the current implementation, if a property is declared in model1 and the getter is overriden in model2, model1 is systematically affected as the property class owner although model2 is the actual implementation associated with the Wicket model. As a consequence, some constraints validations may never been thrown.
Swapping direct property analysis and getter analysis solves this problem.
Workaround: providing my own property resolver.