Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-10716

Browser Unresponsive when Loading Entity with Large Results

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Implemented
    • Trunk
    • None
    • framework/webtools
    • None

    Description

      Recently, I came across a situation where an entity was taking too much of a time(browser asked me to either wait or kill) while loading/searching results in the Webtools application. The entity had close to 5M records, and I checked the server responded timely but the rendering of the screen was taking time.
      When I explored the issue I came across a macro which renders the pagination on the screen, and it had a code block which was causing the screen rendering delay.

      <#assign x=(listSize/viewSize)?ceiling>
        <#list 1..x as i>
          <#if i == (viewIndex+1)><option selected="selected" value="<#else><option value="</#if>${i-1}">${i}</option>
        </#list>
      

      This code seems logical enough to me, and what I gather from this is that the list will render a select box with 250,000 options.

      I would like to propose a change in this UI/UX from select box to an input text box so a user can navigate to any page, similar to a navigation input box in a PDF document reader application.

      Please let me know your thoughts on this and share some more ideas to how we can improve/resolve this issue. Looking forward to your replies!

      Attachments

        1. OFBIZ-10716.patch
          3 kB
          Devanshu Vyas
        2. OFBIZ-10716.patch
          2 kB
          Devanshu Vyas
        3. Screenshot from 2018-12-22 11-03-16.png
          2 kB
          Chandan Khandelwal

        Activity

          People

            jleroux Jacques Le Roux
            devanshu Devanshu Vyas
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: