2 Replies Latest reply on Mar 7, 2010 6:35 AM by mark lewis

    panelMenu displayed slow

    Ker P Newbie

      I use richFaces 3.3.2 SR1.

       

      In my application I have a panelMenu :

       

       

      <rich:panelMenu id="panelMenu" binding="#{CatalogBean.panelMenu}">
      </rich:panelMenu>

       

       

      This panelMenu is taking a long time to load on the production environnement (on the server of my customer).

       

      In my developpement environnement it load fast.

      In the production environnement it load fast if I ask it locally. But if I ask it remotely, it is slow. The rest of the site is fast so the broadband is not guilty. It is something linked with the panelMenu and firewall or security restriction or something like that...

       

      It is not the function that builds the panelMenu in my bean (CatalogBean.panelMenu) because it takes only 0.06 seconds to build while the panelMenu take something like 10 or 15 seconds to be displayed.

       

      I even tried to build this panelMenu (without binding, directly i my jsp) and there is the same problem, it builds fast on developpment or in production locally but it takes a long time to load in production when you call it remotely :

       

      <rich:panelMenu id="panelMenu">
       <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       </rich:panelMenuGroup> <rich:panelMenuGroup>
       <rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuGroup><rich:panelMenuItem></rich:panelMenuItem></rich:panelMenuGroup>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       <rich:panelMenuItem></rich:panelMenuItem>
       </rich:panelMenuGroup>
       </rich:panelMenu>

       

      I guess it is because of security restrictions in the production environment (a corporate world) but I have no idea wha this ould be.

      Have you an idea of what I could do to solve this, if there is something to parameter (in the firewall, or anything else) somewhere or something like that...

       

      Thanks a lot!

        • 1. Re: panelMenu displayed slow
          Ker P Newbie

          I tried to replace the panelMeny by a  Drop Down menu (like in the richfaces demo I tried horizontally and vertically).

          I still use the binding to build them.

           

          And the same poblem appears.

           

          It take a VERY long time to load. The firsts HtmlDropDownMenu appear and then at some point it they begin to appear one by one they each take 2 or 3 seconds to load. So as my menu have something like 12 HtmlDropDownMenu to display at the first level, it takes a long time to load. Only to display 1 menu how is it possible.....

          I have set systemouts in the getter that the binding call. It only take like 1 or 0.6 or even less seconds to go from the begin to the end.

           

           

          So the time is somewhere between my code and the display of the page. The firewall, or some security that check some kind of stuff in richfaces I don't know...

           

          I don't think it is the internet line because the rest of the site goes fast...

           

          Please help this problem is months now and I really need to fix it for my customers now.

          • 2. Re: panelMenu displayed slow
            mark lewis Newbie
            How have you built your panelMenu?  Please post your code.