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

I D commented on TAP5-2500:
---------------------------

I'm afraid I tried this exact fix in the past in the context of other issues 
related to clientId assignment, and trust me - calling 
JavascriptSupport.allocateClientId() any earlier than setupRender() is a *bad* 
idea.

Why? Because the ID you will get will not be guaranteed to be unique. You will 
simply get the component ID (possible namespaced), but without the unique 
suffix. I don't know why this happens, but it probably has to do with the 
internals of IdAllocator.

If I were you, I'd revert this (also for FormFragment).

> Label broken when inside zone and attached to a Field after that zone
> ---------------------------------------------------------------------
>
>                 Key: TAP5-2500
>                 URL: https://issues.apache.org/jira/browse/TAP5-2500
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.4
>            Reporter: I D
>         Attachments: patch
>
>
> This is just one example, since the same problem is observed for 
> TriggerFrament inside a zone when used in conjunction with a FormFragment 
> outside the zone (and after it).
> {code:xml}
>     <t:zone t:id="myZone">
>         <t:label for="myField">Label</t:label>
>     </t:zone>
>     <t:textfield t:id="myField"/>
> {code}
> The reason this doesn't work is because Label.updateAttributes() uses 
> @HeartbeatDeferred and assumes this invocation will be deferred until the end 
> of the *page* render. Alas, since the label is inside a zone, which for some 
> reason starts and ends its own heartbeat (nested within, and occluding, the 
> page heartbeat), the invocation is deferred only until the end of the *zone* 
> render, i.e. - too early.
> Apparently this bug was introduced in [this 
> commit|https://github.com/apache/tapestry-5/commit/cc6fe5f3f85001eca4e0aa6a79c3bedc3e36b82c],
>  which in turn was addressing 
> [TAP5-940|https://issues.apache.org/jira/browse/TAP5-940].



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to