Please check whether main delay is due to server or client interaction. Also try switching to another parser.
Server interaction is not taking much time.More time is taken for rendering the component.Also in web .xml I have given
Is this what you mean regarding parser.
I have tried NEKO parser.But the tree was not rendering properly with that.
But what can be the reason for the complete application becoming slow once the tree is completely expanded even in case of requests for which tree rerendering is not required.
Are there any other optimizations that I can do for improving tree performance.
>> But what can be the reason for the complete application becoming slow once the tree is completely expanded
>> even in case of requests for which tree rerendering is not required.
Have you tried profiling the client side of application using developer tools?
If the aplication is profiled what I noticed is that the number of objects were equal to the number of objects in the tree.That is there was no memory leak as such.Did the profiling at the browser level as well as at the server level.We have used firebug tool and google profiler to check the performance.Is it taking more time in converting the HTMLTree object to xml.
Actually my application works pretty fast when the tree is small.Once the tree is completely expanded, the time taken for sending a request itself seems to be increased.That is, the if click a button or something the ajax status component for that itself will be shown up only after a while.
It will be great if you can suggest something.I tried removing the binding for tree to see whether that can be the reason.But the issue remains same.
Tree has some INPUT elements to track nodes state, so the bigger their number is, more time is taken to prepare form data for submission. Try placing tree into a separate form.
I tried this.But could not find any difference.
Now the code for my tree looks like :
<h:outputText value="Tree Structure"></h:outputText>
<h:panelGrid ........... />
When the tree is completely expanded the performance is worst in mozilla. It will not be respondidng at all.Ie and chrome responds,But takes much time.
I am seeing the same behavior with the rich:tree. I have a simple tree that has a nodeSelectListener. If I expand a tree node that has a lot of child nodes. I am talking 1000+ the page becomes unresponsive taking 30+ seconds to reRender a second panel with content based on the selected node. Does anyone have any insight on the rich:tree performance or is this control just a toy?
Do you have exactly the same problem as the original thread author describes?
It sounds like the issue I am seeing. node expansion is very slow and the more nodes that are expanded the slower the tree responds. I did add the following attributtes and the node selection is behaving much better, but still not speedy
When I expand a node and load 1200 children into it (server side time is millseconds) the browser takes over 15 seconds to render the expanded node. I am just wondering if this control is capable of dealing with large node sets?
I can confirm the problem. I had a 5 levels tree with 2000+ nodes in it and I had exactly the same problem. It was better with ajax mode than client mode but still very slow when expanded.
I ended up using Yahoo YUI tree (in client mode) which works very well even with IE6... I used jsFunction to make the link between richfaces / jsf and Yahoo YUI.
I agree that 2000+ nodes may represent a lot of DOM elements, and processing, especially since the tree is not the only component in the page but other API seems to work very well in that context even with older browsers.
Thanks for the reply.Even I could not solve the issue with Richfaces and finally replaced my richfaces tree with jquery tree.