Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-2500

Label broken when inside zone and attached to a Field after that zone

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 5.4
    • None
    • tapestry-core
    • None

    Description

      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).

          <t:zone t:id="myZone">
              <t:label for="myField">Label</t:label>
          </t:zone>
          <t:textfield t:id="myField"/>
      

      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, which in turn was addressing TAP5-940.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            annorax I D

            Dates

              Created:
              Updated:

              Slack

                Issue deployment