You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2013/01/21 23:07:08 UTC

svn commit: r1436650 - /struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java

Author: lukaszlenart
Date: Mon Jan 21 22:07:08 2013
New Revision: 1436650

URL: http://svn.apache.org/viewvc?rev=1436650&view=rev
Log:
WW-3912 adds proper support for checked attribute

Modified:
    struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java

Modified: struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java?rev=1436650&r1=1436649&r2=1436650&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java (original)
+++ struts/struts2/trunk/plugins/javatemplates/src/main/java/org/apache/struts2/views/java/simple/CheckboxListHandler.java Mon Jan 21 22:07:08 2013
@@ -68,7 +68,7 @@ public class CheckboxListHandler extends
                 a.add("type", "checkbox")
 	                .add("name", name)
 	                .add("value", itemKeyStr)
-	                .addIfTrue("checked", params.get("nameValue"))
+	                .addIfTrue("checked", isChecked(params, itemKeyStr))
 	                .addIfTrue("readonly", params.get("readonly"))
 	                .addIfTrue("disabled", disabled)
 	                .addIfExists("tabindex", params.get("tabindex"))
@@ -101,4 +101,18 @@ public class CheckboxListHandler extends
             }
         }
     }
+
+    private Boolean isChecked(Map<String, Object> params, String itemKeyStr) {
+        Boolean checked = false;
+        if (itemKeyStr != null) {
+            String[] nameValues = (String[]) params.get("nameValue");
+            for (String value : nameValues) {
+                if (checked = value.equalsIgnoreCase(itemKeyStr)) {
+                    break;
+                }
+            }
+        }
+        return checked;
+    }
+
 }