Primefaces组件“树”显示不正确

时间:2013-09-19 11:41:21

标签: jsf primefaces tree facelets

我尝试使用Primefaces组件“树”。 在我的第一步,我想尝试使用Primefaces Demo中的数据。

http://www.primefaces.org/showcase/ui/treeSelectionSingle.jsf

这是我的代码:

TreeBean:

import java.io.Serializable;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import org.primefaces.model.DefaultTreeNode;
import org.primefaces.model.TreeNode;

public class TreeBean implements Serializable {

private TreeNode root;

private TreeNode selectedNode;

public TreeBean() {
    root = new DefaultTreeNode("Root", null);
    TreeNode node1 = new DefaultTreeNode("Node 1", root);
    TreeNode node2 = new DefaultTreeNode("Node 2", root);
    TreeNode node3 = new DefaultTreeNode("Node 3", root);
    TreeNode node4 = new DefaultTreeNode("Node 4", root);
    TreeNode node5 = new DefaultTreeNode("Node 5", root);

    TreeNode node10 = new DefaultTreeNode("Node 1.0", node1);
    TreeNode node11 = new DefaultTreeNode("Node 1.1", node1);

    TreeNode node20 = new DefaultTreeNode("Node 2.0", node2);
    TreeNode node21 = new DefaultTreeNode("Node 2.1", node2);

    TreeNode node30 = new DefaultTreeNode("Node 3.0", node3);
    TreeNode node31 = new DefaultTreeNode("Node 3.1", node3);

    TreeNode node40 = new DefaultTreeNode("Node 4.0", node4);
    TreeNode node41 = new DefaultTreeNode("Node 4.1", node4);
    TreeNode node42 = new DefaultTreeNode("Node 4.2", node4);
    TreeNode node43 = new DefaultTreeNode("Node 4.3", node4);

    TreeNode node50 = new DefaultTreeNode("Node 5.0", node5);
    TreeNode node51 = new DefaultTreeNode("Node 5.1", node5);
}

public TreeNode getRoot() {
    return root;
}

public TreeNode getSelectedNode() {
    return selectedNode;
}

public void setSelectedNode(TreeNode selectedNode) {
    this.selectedNode = selectedNode;
}

public void displaySelectedSingle(ActionEvent event) {
    if(selectedNode != null) {
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Selected", selectedNode.getData().toString());

        FacesContext.getCurrentInstance().addMessage(null, message);
    }
}}

XHTML现场:

<h:form>
  <p:tree id="treeSingle" value="#{wizard.massnahmeTree.root}"
                        var="node" selectionMode="single"
                        selection="#{wizard.massnahmeTree.selectedNode}">

                        <p:treeNode>
                            <h:outputText value="#{node}" />
                        </p:treeNode>
                    </p:tree>

</h:form>

我现在的问题是,箭头丢失了。箭头进入更深的树阶段。如果我选择一个选项,突出显示也会丢失。

你能帮助我吗?

(抱歉我的英文。:))

编辑:

我在我的ManagedBean“向导”中定义了我的bean。 代码:

    // ==== Tree define === //
private TreeBean massnahmeTree;

    public TreeBean getMassnahmeTree() {
    return massnahmeTree;
}

public void setMassnahmeTree(TreeBean massnahmeTree) {
    this.massnahmeTree = massnahmeTree;
}

0 个答案:

没有答案