hi everybody,
I have the following code
<rich:tree value="#{treeElem.trees}" var="item" stateAdvisor="#{treeDemoStateAdvisor}" switchType="ajax" >
<rich:treeNode changeExpandListener="#{handler.processExpansion}">
<h:outputText value="#{item.id} #{item.name}" />
</rich:treeNode>
</rich:tree>@Name("treeDemoStateAdvisor")
public class TreeDemoStateAdvisor implements TreeStateAdvisor {
public Boolean adviseNodeOpened(UITree tree) {
if (!PostbackPhaseListener.isPostback()) {
Object key = tree.getRowKey();
TreeRowKey treeRowKey = (TreeRowKey) key;
if (treeRowKey == null || treeRowKey.depth() <= 20) {
return Boolean.TRUE;
}
}
return null;
}
public Boolean adviseNodeSelected(UITree tree) {
return null;
}
}Hi,
Check that
PostbackPhaseListener.isPostback()is working right. It should reflect whether current request is postback or not.