Primefaces树型实现

Primefaces树型实现,primefaces,treetable,Primefaces,Treetable,我正在尝试使用复选框和multiselection实现primefaces treetable,就像中的一样,一切都按预期工作,但是当我尝试获取所选节点的列表时,我只获取顶部节点。因此,例如,如果用户选择“Movies”的子节点,则它不存在于TreeNode[]selectedNodes中。为什么会这样?我错过了什么? 我的密码是 在.xthml文件中 <p:treeTable value="#{backingBean.theTree}" var="tree" id="tree"

我正在尝试使用复选框和multiselection实现primefaces treetable,就像中的一样,一切都按预期工作,但是当我尝试获取所选节点的列表时,我只获取顶部节点。因此,例如,如果用户选择“Movies”的子节点,则它不存在于TreeNode[]selectedNodes中。为什么会这样?我错过了什么? 我的密码是 在.xthml文件中

<p:treeTable value="#{backingBean.theTree}" var="tree" id="tree"  
     selection="#{backingBean.selectedNodes}" selectionMode="checkbox">  

    <p:column style="width:150px">  
        <f:facet name="header">  
            Name  
        </f:facet>
        <span title="#{tree.objectCode}"><h:outputText value="#{tree.objectName}" /></span>
    </p:column>  

    <p:column style="width:150px">  
        <f:facet name="header">  
            Object Description  
        </f:facet>  
        <h:outputText value="#{tree.objectDescription}" />  
    </p:column> 

</p:treeTable>  

我有一个递归循环,它基本上以相同的方式创建更多的节点

你说的“我只得到顶部节点”是什么意思?如果您选择“Movie”的子节点,“Movie”是否会出现在selectedNodes中?是的,但列表中只有“Movie”,而不是selected child。您可以粘贴backingbean代码吗?
this.theTree = new DefaultTreeNode("root", null);
TreeNode eachParent = new DefaultTreeNode(new Document(...some properties...), root);