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

Thomas Scheinecker commented on TAP5-1066:
------------------------------------------

i ran into the same problem and if i'm not mistaken the problem is the 
following code within the beginRender method:

...
        if (inPlace && zone == null)
        {
            zone = jsSupport.allocateClientId(resources);

            writer.element("div", "id", zone);

            clientBehaviorSupport.addZone(zone, null, "show");

            didRenderZoneDiv = true;
        }
...

for the first grid the zone field is null so everything will be rendered 
correctly, but for the following ones the field still holds the assigned value 
of the first one so the statement won't be entered and therefor no wrapping div 
(with a unique id) will be created and because the GridColumns render the zone 
as link property / context all sorting links trigger a zone refresh within the 
first grid.

a workaround for the sorting problem is setting inline to false, but as that 
results in full page refreshes this 'solution' is only sub-optimal

i think this problem could be resolved by clearing the zone field in the 
afterRender or clenaupRender (to let mixins still use this property) method or 
by making the zone field a parameter so the user can provide a custom zone to 
update on the sort events
                
> Client-Id and Links in Grid not correct when putting a Grid inside a Loop
> -------------------------------------------------------------------------
>
>                 Key: TAP5-1066
>                 URL: https://issues.apache.org/jira/browse/TAP5-1066
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.2
>            Reporter: Matthias Jell
>
> I write a page with a grid component inside a loop. For every iteration 
> result in the loop I generate a new display bean model as grid model.
> The page will be rendered and it looks fine, but only the first grid getting 
> a client-id and all sorting links of all grids inside the loop use this 
> clientId. 
> In my opinion every grid should have a single clientId.
> ....
> <t:loop source="abc" result="xyz">
>    <t:grid />
> </t:loop>

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to