Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-5422

ComponentRenderer.renderComponent() adds a page to DataStore

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 6.12.0
    • 6.13.0, 7.0.0-M1
    • wicket
    • None

    Description

      I'm using ComponenetRenderer withing CustomTooltipBehavior (wicket-jquery-ui) to generate tooltip content. I add this to about 50 rows in my table so I run renderComponent() method as many times.
      All worked fine but there was a problem with performance when I used Fragment component with markup attached to the WebPage. I did some digging and finally checked http://localhost:8080/context/wicket/internal/debug/diskDataStore and it appeared that for one request, Wicket stores 51 pages in it. All of the size of the whole page (about 300kB) and all of them named org.apache.wicket.core.util.string.ComponentRenderer$RenderPage.

      I changed implementation from Fragment to Panel componenet and the size was reduced to (1kB) but still all of these items were stored in the DataStore.

      It seems that this method is creating a dummy page in order to create the markup, but how can I avoid storing these pages?

      Attachments

        Activity

          People

            mgrigorov Martin Tzvetanov Grigorov
            MateuszM Mateusz Mieszkowski
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: