You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-user@incubator.apache.org by Naresh Bhatia <NB...@sapient.com> on 2006/09/21 21:53:23 UTC
Does TreeTable support lazy loading?
Does TreeTable support lazy loading? I would like to display a very
large tree and want to lazy load the children when the user expands a
parent node. After reading the documentation I thought that the
RowDisclosureEvent could be used for this, but I don't readily see how.
This is what I have done so far:
// Set the treeModel and rowDisclosureListener for the tree table
<tr:treeTable var="node" value="#{treeTableBean.treeModel}"
rowDisclosureListener="#{treeTableBean.processRowDisclosureEvent}">
...
</tr:treeTable>
// Here's the bean method that returns the tree model
// ************ Just return the root node ***********
public TreeModel getTreeModel() {
if (treeModel == null)
{
TreeNodeVO root = getTreeService().getTreeNode("CORP");
treeModel = new ChildPropertyTreeModel(root, "children");
}
}
At this point I see a TreeTable on my page with just the root node, but
no arrow to expand it. So here are my questions:
1) Since the root node cannot be expanded, the rowDisclosureListener
will not be called. Even if it is called, how can I use the event to
lazily connect the children to the root node? How does the event tell me
what to fetch next and where to put this information?
2) Currently I have my bean in request scope. Does TreeTable, especially
with lazy loading, require the bean to be in the session scope?
Thanks for your help.
Naresh Bhatia
RE: Does TreeTable support lazy loading?
Posted by Naresh Bhatia <NB...@sapient.com>.
I would really appreciate if someone could give me a helping hand on
this question. I have to deliver a proof-of-concept by Monday, so even
small hints would help me tremendously. Please see below for details.
Again, thanks so much for your help.
Naresh Bhatia
-----Original Message-----
From: Naresh Bhatia [mailto:NBhatia@sapient.com]
Sent: Thursday, September 21, 2006 5:53 PM
To: adffaces-user@incubator.apache.org
Subject: Does TreeTable support lazy loading?
Does TreeTable support lazy loading? I would like to display a very
large tree and want to lazy load the children when the user expands a
parent node. After reading the documentation I thought that the
RowDisclosureEvent could be used for this, but I don't readily see how.
This is what I have done so far:
// Set the treeModel and rowDisclosureListener for the tree table
<tr:treeTable var="node" value="#{treeTableBean.treeModel}"
rowDisclosureListener="#{treeTableBean.processRowDisclosureEvent}">
...
</tr:treeTable>
// Here's the bean method that returns the tree model
// ************ Just return the root node ***********
public TreeModel getTreeModel() {
if (treeModel == null)
{
TreeNodeVO root = getTreeService().getTreeNode("CORP");
treeModel = new ChildPropertyTreeModel(root, "children");
}
}
At this point I see a TreeTable on my page with just the root node, but
no arrow to expand it. So here are my questions:
1) Since the root node cannot be expanded, the rowDisclosureListener
will not be called. Even if it is called, how can I use the event to
lazily connect the children to the root node? How does the event tell me
what to fetch next and where to put this information?
2) Currently I have my bean in request scope. Does TreeTable, especially
with lazy loading, require the bean to be in the session scope?
Thanks for your help.
Naresh Bhatia