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

    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

        1. patch
          7 kB
          Jochen Kemnade

        Issue Links

          Activity

            People

              Unassigned Unassigned
              annorax I D
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: