There is a workaround, but it is not very elegant. You can do a driver.flush() in a change handler for the field you want to validate on-the-fly which, of course, re-validates (i.e. calls getValue()) on all fields. That seems to me a bit like swatting a fly with a sledgehammer.
It would seem better to have, perhaps, another recordError method signature like: void recordError(String message, Object value, Object userData, boolean immediate); When immediate is true, the driver would immediately post the error to the nearest super-Editor that implements the HasEditorErrors interface, rather than waiting for a driver flush(). Thoughts? On Monday, October 8, 2012 7:44:28 AM UTC-5, RickL wrote: > > Actually, that only fixed part of my problem: the fact that the editor was > not reporting errors at all (because it was not getting a delegate). I > still do not have a good solution to the original question. > > Sorry about the confusion. > > On Monday, October 8, 2012 7:40:29 AM UTC-5, RickL wrote: >> >> I found the solution. I was using an editor decorator to wrap the >> number validating editor. In this case it appears that you must forward >> the setDelegate from the editor decorator to its sub-editor as in: >> >> @Override >> public void setDelegate(EditorDelegate<T> delegate) { >> if (editor instanceof HasEditorDelegate) { >> ((HasEditorDelegate<T>) editor).setDelegate(delegate); >> } >> } >> >> It works now. >> >> On Sunday, October 7, 2012 3:38:05 PM UTC-5, RickL wrote: >>> >>> I have a problem. I want to force the editor framework to immediately >>> validate a field when the user changes its value. The most obvious and >>> simple case is a numeric field. If the user enters an invalid number, I >>> want the error to be reported as soon as the user leaves the field. I >>> don't want to wait for the user to initiate a save to detect that error >>> (and other errors like it that don't need to go to the server). >>> >>> This seems like it should be very easy, but I sure can't seem to find a >>> clean solution. >>> >>> Thanks >>> >>> >>> -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/xEx-hLKW0xUJ. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.