From a727dd771f9b6f3e5dd8a4fd452f6e88e61652d9 Mon Sep 17 00:00:00 2001 From: Lorenzo Tilve Date: Mon, 6 Sep 2010 12:19:29 +0200 Subject: [PATCH] Fixing nullpointer exception when managing criteria tree --- .../criterion/CriterionTreeController.java | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/criterion/CriterionTreeController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/criterion/CriterionTreeController.java index a4430a6af..e2473e132 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/criterion/CriterionTreeController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/resources/criterion/CriterionTreeController.java @@ -40,7 +40,6 @@ import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.GenericForwardComposer; import org.zkoss.zul.Button; import org.zkoss.zul.Checkbox; -import org.zkoss.zul.Label; import org.zkoss.zul.Textbox; import org.zkoss.zul.TreeModel; import org.zkoss.zul.Treecell; @@ -414,17 +413,19 @@ public class CriterionTreeController extends GenericForwardComposer { } public static TreeViewStateSnapshot snapshotOpened(Tree tree) { - Iterator itemsIterator = tree.getTreechildrenApi() - .getItems().iterator(); Set dataOpen = new HashSet(); Set all = new HashSet(); - while (itemsIterator.hasNext()) { - Treeitem treeitem = (Treeitem) itemsIterator.next(); - Object value = getAssociatedValue(treeitem); - if (treeitem.isOpen()) { - dataOpen.add(value); + if (tree != null && tree.getTreechildrenApi() != null) { + Iterator itemsIterator = tree.getTreechildrenApi() + .getItems().iterator(); + while (itemsIterator.hasNext()) { + Treeitem treeitem = (Treeitem) itemsIterator.next(); + Object value = getAssociatedValue(treeitem); + if (treeitem.isOpen()) { + dataOpen.add(value); + } + all.add(value); } - all.add(value); } return new TreeViewStateSnapshot(dataOpen, all); }