public void processSelection(TreeSelectionChangeEvent event) { List<Object> selection = new ArrayList<Object>(event.getNewSelection()); /*If there are no selected nodes*/ if (selection.isEmpty()) { return; } Object currentSelectionKey = selection.get(0); UITree tree = (UITree) event.getSource(); Object storedKey = tree.getRowKey(); tree.setRowKey(currentSelectionKey); repositorySelectNodeStateHolder.setSelectedNode((TreeNode) tree.getRowData()); tree.setRowKey(storedKey); }