I had a requirement of displaying a group of folders in very large numbers in the corresponding Folder hierarchies in a JSP. I acheived it using Ajax calls. This is the set of steps we have adopted
1. When ever a user clicks a Open/Close/add file/delete file/add folder/delete folder to a folder, using Ajax we retrieved the whole result set into a XML, applied some styles to it(XSLT) and finally we make them displayed in the jsp using object. innerHTML = processResponse()method in Ajax.
2. while we dispay this entire Library tree in the JSP, we maintain the state of the folders in a map(Which contains the folder id's which are in expanded state) and that map is being attached to a session and thus we store the each FolderInfo and finally display the tree using XSLT.
3. I notice the state is always getting disturbed every time I perform the above mentioned actions, I see the entire tree with all the folders in expanded state(as the default value of the isExpand variable of the FolderInfo object is true.). Is this the correct way of preserving the Library Tree's state. If not so , please suggest an improvements of the existing process or an alternative one.
This process involves the role of map in the session across alll teh DAO and business layers and finally to the Presentaion layer.