Thanks for the Generics tip, which avoids the ugly casts.

The last two days I was thinking about your proposal at the beginning of the comment, but I don't get it. Where is all the code of AnnotatableValidator.validateAnnotatable(Annotatable annotatable) that creates the validators?