r1763 - trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation
Author: sletellier Date: 2010-03-08 17:23:17 +0100 (Mon, 08 Mar 2010) New Revision: 1763 Log: Fix npe when no entities are selected in tree Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java 2010-03-08 14:03:48 UTC (rev 1762) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java 2010-03-08 16:23:17 UTC (rev 1763) @@ -134,6 +134,9 @@ public String getSelectedPath(JAXXContext context) { List<String> values = getSelectedPathContextEntry().getContextValue(context); + if (values == null){ + return null; + } if (log.isWarnEnabled()){ if (values.size() > 1){ log.warn("More than one values are selected, return first one"); @@ -148,7 +151,10 @@ public NavigationTreeNode getSelectedNode(JAXXContext context) { List<NavigationTreeNode> values = getSelectedNodeContextEntry().getContextValue(context); - if (log.isWarnEnabled()){ + if (values == null){ + return null; + } + if (log.isWarnEnabled() && values != null){ if (values.size() > 1){ log.warn("More than one values are selected, return first one"); } @@ -162,6 +168,9 @@ public Object getSelectedBean(JAXXContext context) { List<Object> values = getSelectedBeanContextEntry().getContextValue(context); + if (values == null){ + return null; + } if (log.isWarnEnabled()){ if (values.size() > 1){ log.warn("More than one values are selected, return first one"); Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java 2010-03-08 14:03:48 UTC (rev 1762) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java 2010-03-08 16:23:17 UTC (rev 1763) @@ -238,7 +238,7 @@ return; } if (log.isDebugEnabled()) { - log.debug("will select path " + paths); + log.debug("will select " + paths.length + " paths"); } // ok can safely select the new path super.setSelectionPaths(paths);
Le Mon, 8 Mar 2010 17:23:30 +0100 (CET), sletellier@users.nuiton.org a écrit :
Author: sletellier Date: 2010-03-08 17:23:17 +0100 (Mon, 08 Mar 2010) New Revision: 1763
Log: Fix npe when no entities are selected in tree
J'ai commité le code un peu nettoyé ;) Car y'avait un second bug possible car tu teste pas qu'il y a au moins une valuer et tu fais une collection.get(0) : ce qui n'est pas correct
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java 2010-03-08 14:03:48 UTC (rev 1762) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java 2010-03-08 16:23:17 UTC (rev 1763) @@ -134,6 +134,9 @@ public String getSelectedPath(JAXXContext context) { List<String> values = getSelectedPathContextEntry().getContextValue(context); + if (values == null){ + return null; + } if (log.isWarnEnabled()){ if (values.size() > 1){ log.warn("More than one values are selected, return first one"); @@ -148,7 +151,10 @@
public NavigationTreeNode getSelectedNode(JAXXContext context) { List<NavigationTreeNode> values = getSelectedNodeContextEntry().getContextValue(context); - if (log.isWarnEnabled()){ + if (values == null){ + return null; + } + if (log.isWarnEnabled() && values != null){ if (values.size() > 1){ log.warn("More than one values are selected, return first one"); } @@ -162,6 +168,9 @@
public Object getSelectedBean(JAXXContext context) { List<Object> values = getSelectedBeanContextEntry().getContextValue(context); + if (values == null){ + return null; + } if (log.isWarnEnabled()){ if (values.size() > 1){ log.warn("More than one values are selected, return first one");
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java 2010-03-08 14:03:48 UTC (rev 1762) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java 2010-03-08 16:23:17 UTC (rev 1763) @@ -238,7 +238,7 @@ return; } if (log.isDebugEnabled()) { - log.debug("will select path " + paths); + log.debug("will select " + paths.length + " paths"); } // ok can safely select the new path super.setSelectionPaths(paths);
_______________________________________________ Jaxx-commits mailing list Jaxx-commits@list.nuiton.org http://list.nuiton.org/cgi-bin/mailman/listinfo/jaxx-commits
-- Tony Chemit -------------------- tél: +33 (0) 2 40 50 29 28 email: chemit@codelutin.com http://www.codelutin.com
participants (2)
-
sletellier@users.nuiton.org -
Tony Chemit