[ 
https://issues.apache.org/jira/browse/TAP5-2391?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15599764#comment-15599764
 ] 

Geoff Callender edited comment on TAP5-2391 at 10/23/16 2:39 PM:
-----------------------------------------------------------------

Regression affecting T5.4.0 and 5.4.1. 

I've only just upgraded from 5.4-beta-35 and was stunned to find this behaviour 
has returned, due to the rollback of 22bd2c14b3c7d91ebd97cbc264882552c12044f7 
(see TAP5-2482). The reason I was "stunned" was because surely someone else is 
affected by this?

I've experimented with re-applying Howard's one line change to AbstractField 
(mentioned in TAP5-2482) and it fixes the issue. He changed this...

{code}
String controlName = formSupport.allocateControlName(assignedClientId);
{code}

...to this...

{code}
String controlName = formSupport.allocateControlName(resources.getId());
{code}

It look like the rollback also took out the tests that Howard created for this 
symptom. I think they should be reinstated.


was (Author: geoffcallender):
Regression affecting T5.4.0 and 5.4.1. 

I've only just upgraded from 5.4-beta-35 and was stunned to find this behaviour 
has returned, due to the rollback of 22bd2c14b3c7d91ebd97cbc264882552c12044f7 
(see TAP5-2482). The reason I was "stunned" was because surely someone else is 
affected by this?

I've experimented with re-applying Howard's one line change to AbstractField 
(mentioned in TAP5-2482) and it fixes the issue. He changed this...

{code}
String controlName = formSupport.allocateControlName(assignedClientId);
{code}

...to this...

{code}
String controlName = formSupport.allocateControlName(resources.getId());
{code}

> 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: Blocker
>              Labels: 54_release_prerequisite
>             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)

Reply via email to