From 1c42ba6349a3f3203b2dad8fc45b19b7ad300e53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacobo=20Aragunde=20P=C3=A9rez?= Date: Thu, 29 Apr 2010 13:22:02 +0200 Subject: [PATCH] ItEr56S04ValidacionEProbasFuncionaisItEr55S04: [Bug #423] Prevent NoSuchElementException when clicking in some places of a bandboxMultipleSearch. --- .../bandboxsearch/BandboxMultipleSearch.java | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/components/bandboxsearch/BandboxMultipleSearch.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/components/bandboxsearch/BandboxMultipleSearch.java index 80af2bf7d..e62c14d08 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/common/components/bandboxsearch/BandboxMultipleSearch.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/common/components/bandboxsearch/BandboxMultipleSearch.java @@ -24,6 +24,7 @@ import static org.navalplanner.web.I18nHelper._; import java.util.ArrayList; import java.util.List; +import java.util.NoSuchElementException; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; @@ -134,11 +135,13 @@ public class BandboxMultipleSearch extends HtmlMacroComponent { } private void pickElementFromListAndCloseBandbox() { - final Object object = getSelectedItem().getValue(); - if (multipleFiltersFinder.isValidNewFilter(object)) { - addSelectedElement(object); - clearListbox(); - listbox.setModel(getSubModel()); + if(getSelectedItem() != null) { + final Object object = getSelectedItem().getValue(); + if (multipleFiltersFinder.isValidNewFilter(object)) { + addSelectedElement(object); + clearListbox(); + listbox.setModel(getSubModel()); + } } bandbox.close(); } @@ -239,7 +242,12 @@ public class BandboxMultipleSearch extends HtmlMacroComponent { } private Listitem getSelectedItem() { - return (Listitem) listbox.getSelectedItems().iterator().next(); + try { + return (Listitem) listbox.getSelectedItems().iterator().next(); + } + catch (NoSuchElementException e) { + return null; + } } public void setDisabled(boolean disabled) {