GWT already includes JSR 303 bean validation, and Errai includes some convenience wrappers for it. Maybe best to leverage that work?