I took this example from Primefaces Showcase Tree Checkbox Selection:
public TreeCheckboxBean() {
root2 = new CheckboxTreeNode("Root", null);
TreeNode node0 = new CheckboxTreeNode("Node 0", root2);
TreeNode node1 = new CheckboxTreeNode("Node 1", root2);
TreeNode node2 = new CheckboxTreeNode("Node 2", root2);
TreeNode node00 = new CheckboxTreeNode("Node 0.0", node0);
TreeNode node01 = new CheckboxTreeNode("Node 0.1", node0);
TreeNode node10 = new CheckboxTreeNode("Node 1.0", node1);
TreeNode node11 = new CheckboxTreeNode("Node 1.1", node1);
TreeNode node000 = new CheckboxTreeNode("Node 0.0.0", node00);
TreeNode node001 = new CheckboxTreeNode("Node 0.0.1", node00);
TreeNode node010 = new CheckboxTreeNode("Node 0.1.0", node01);
TreeNode node100 = new CheckboxTreeNode("Node 1.0.0", node10);
}
public TreeNode[] getSelectedNodes() {
return selectedNodes;
}
public void setSelectedNodes(TreeNode[] selectedNodes) {
this.selectedNodes = selectedNodes;
}
public void displaySelectedMultiple() {
if(selectedNodes != null && selectedNodes.length > 0) {
StringBuilder builder = new StringBuilder();
for(TreeNode node : selectedNodes) {
builder.append(node.getData().toString());
builder.append("<br />");
}
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Selected", builder.toString());
FacesContext.getCurrentInstance().addMessage(null, message);
}
}
From there I check child Node 0.1, Node 0.1.0, Node 1.1. And when I click display selected button, the notification only shows the above node as selected.
Is there any way that I can include Node 0 and Node 1 as selected also?
So it will become Node 0, Node 0.1, Node 0.1.0, Node 1, Node 1.1
FYI: I'm using Primefaces 4, JSF 2.1.26.