Uploaded image for project: 'Tapestry'
  1. Tapestry
  2. TAPESTRY-1667

Parameters bound to expansions may be cached when they should not be

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.0
    • Fix Version/s: 5.0.6
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      From the mailing list:

      Hi,

      I wrote a simple pager component but one parameter (currentPage)
      is not updated in a second request.

      In the template I have the following:

      <t:pager t:numberOfPages="${numberOfPages}"
      t:currentPage="${currentPage}"
      ... some other attributes ... />

      In the page class this currentPage accessor:

      public int getCurrentPage()

      { return _currentPage; }

      which is an int and has the correct values in all requests.

      The pager component contains this currentPage property

      @Parameter(required = true, defaultPrefix="prop")
      private Integer _currentPage;

      which is used in

      @BeginRender
      boolean beginRender( MarkupWriter writer )

      which returns false (no other render methods, no template).

      When I debug the code I see, that the first time, the _currentPage is
      accessed, the pages getCurrentPage method is invoked.
      In all subsequent page requests, the value of the first request is
      still stored and not updated.

      What am I doing wrong, or should T5 behave differently?

      Do I have to take any action to unbind/uncache/reset the currentPage
      property in the pager component?

      Thanx && cheers,
      Martin

      This made my think that the binding for expansions may indicate the value is cacheable, when it is not.

        Attachments

          Activity

            People

            • Assignee:
              hlship Howard M. Lewis Ship
              Reporter:
              hlship Howard M. Lewis Ship
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: