http://gwt-code-reviews.appspot.com/845801/diff/5001/6008 File user/src/com/google/gwt/validation/rebind/BeanHelper.java (right):
http://gwt-code-reviews.appspot.com/845801/diff/5001/6008#newcode24 user/src/com/google/gwt/validation/rebind/BeanHelper.java:24: private final Class<?> clazz; Could you change this to a JType or JClassType instead? It's kind of weird for generator models to use the class objects, since it may be the case that there is no compiled version of the type available to the generator. http://gwt-code-reviews.appspot.com/845801/diff/5001/6009 File user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java (right): http://gwt-code-reviews.appspot.com/845801/diff/5001/6009#newcode92 user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java:92: // HashSet<ConstraintViolation<T>>(); +1 to example comments. http://gwt-code-reviews.appspot.com/845801/diff/5001/6009#newcode153 user/src/com/google/gwt/validation/rebind/GwtSpecificValidatorCreator.java:153: sw.println("Class<?>... groups) {"); This code is fine as is, but as of last week SourceWriter has printf-style overloads. http://gwt-code-reviews.appspot.com/845801/diff/5001/6011 File user/src/com/google/gwt/validation/rebind/ValidatorCreator.java (right): http://gwt-code-reviews.appspot.com/845801/diff/5001/6011#newcode46 user/src/com/google/gwt/validation/rebind/ValidatorCreator.java:46: private static final WeakHashMap<TypeOracle, Map<String, BeanHelper>> helpers = new WeakHashMap<TypeOracle, Map<String, BeanHelper>>(); There's some ongoing work on the compiler-side of things to figure out the best way to cache this kind of data. The current approach for data whose lifetime is bounded by the TypeOracle is to stash the map in a ThreadLocal, since each GWT module lives in its own thread in DevMode. http://gwt-code-reviews.appspot.com/845801/diff/5001/6011#newcode56 user/src/com/google/gwt/validation/rebind/ValidatorCreator.java:56: private final Map<String, BeanHelper> beansToValidate = new HashMap<String, BeanHelper>(); You might want to use the StringKey utility class to make the generic signature more informative. http://gwt-code-reviews.appspot.com/845801/diff/5001/6013 File user/test/com/google/gwt/validation/example/client/AuthorTest.java (right): http://gwt-code-reviews.appspot.com/845801/diff/5001/6013#newcode37 user/test/com/google/gwt/validation/example/client/AuthorTest.java:37: // @Override Old code? http://gwt-code-reviews.appspot.com/845801/diff/5001/6013#newcode47 user/test/com/google/gwt/validation/example/client/AuthorTest.java:47: // expected Style: You can name the variable "expected" and eliminate the comment. http://gwt-code-reviews.appspot.com/845801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors