[ https://issues.apache.org/jira/browse/TAP5-2391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Howard M. Lewis Ship closed TAP5-2391. -------------------------------------- Resolution: Fixed Fix Version/s: 5.4 Had to introduce Field2 to make this work, but looks to be at least as good a fix as how it worked previously. > Field-specific error not shown when AJAX used > --------------------------------------------- > > Key: TAP5-2391 > URL: https://issues.apache.org/jira/browse/TAP5-2391 > Project: Tapestry 5 > Issue Type: Bug > Components: tapestry-core > Affects Versions: 5.4 > Reporter: Geoff Callender > Assignee: Howard M. Lewis Ship > Priority: Critical > Fix For: 5.4 > > > Found this bug in 5.4-beta-22. I've confirmed that the bug was not present in > 5.4-beta-6. > When an error is recorded with Form.recordError(Field field, String > errorMessage) or ValidationTracker.recordError(Field field, String > errorMessage) it normally is shown in the UI by decorating the field in error > and displaying the errorMessage below it. > In 5.4-beta-6 and every release ever before that, that was the behaviour > regardless of whether the request is non-AJAX or AJAX. > In 5.4-beta-22, the behaviour changes when the request is AJAX: the field > does not display an error. That is, the field is *not* decorated and the > errorMessage is *not* shown with it. If your Errors component has > globalOnly="true", which is the norm these days, then you won't even see the > error message there! If you set globalOnly="false" then the message *is* > shown, but who would want to set globalOnly="false"??? > Comparing the HTTP responses of beta-22 with beta-6, I see that beta-6 had an > extra entry in the inits, like this: > ["t5/core/fields:showValidationError", "firstName_8cf3108fe0ece9", "First > Name must not be Acme."] -- This message was sent by Atlassian JIRA (v6.3.4#6332)