1

我有一个带树的 tabView。每当我加载选项卡时,primefaces 都会初始化所有选项卡。似乎 dynamic="true" 不起作用

<p:tabView id="tabView" dynamic="true" cache="true">

<p:tab id="tab1" title="1">
</p:tab>

<p:tab id="tab2" title="2">
</p:tab>

<p:tab id="tab3" title="3">
</p:tab>

<p:tab id="tab4" title="content">
   <p:tree value="#{myBean.tree}" var="node" id="tree" animate="true" dynamic="true">
      <p:treeNode>
        stuff
      </p:treeNode>
   </p:tree>
</p:tab>

<p:tab id="tab5" title="5">
</p:tab>

</p:tabView>

@ManagedBean
@SessionScoped
@Named(value = "myBean")
public class MyBean implements Serializable
{

    private Integer activeTab;

    private static final long serialVersionUID = 3915849796901858147L;

    public MyBean()
    {
        super();
    }

    public Integer getActiveTab()
    {
        return activeTab;
    }

    public void setActiveTab(final Integer tab)
    {
        this.activeTab = tab;
    }


    public TreeNode getTree()
    {
       System.out.println("TREE");
    }
}

单击选项卡后,将调用方法 getTree 五次单击选项卡 1:

Console
TREE
TREE
TREE
TREE
TREE

单击选项卡 2:

Console
TREE
TREE
TREE
TREE
TREE

如果我按照应有的方式替换<p:tree><h:outputText>它的作品。

有任何想法吗?

primefaces 3.5 glassfish 3.1.2

4

0 回答 0