You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ba...@apache.org on 2007/04/27 22:08:37 UTC

svn commit: r533205 - /myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java

Author: baranda
Date: Fri Apr 27 13:08:36 2007
New Revision: 533205

URL: http://svn.apache.org/viewvc?view=rev&rev=533205
Log:
Applied patch for  MYFACES-1605 (h:selectBooleanCheckbox h:selectManyCheckbox h:selectManyListbox h:selectManyMenu h:selectOneListbox h:selectOneMenu h:selectOneRadio broken). Thanks to Martin Haimberger

Modified:
    myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java

Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java?view=diff&rev=533205&r1=533204&r2=533205
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/taglib/core/SelectItemsTag.java Fri Apr 27 13:08:36 2007
@@ -15,6 +15,9 @@
  */
 package org.apache.myfaces.taglib.core;
 
+import javax.el.ValueExpression;
+import javax.faces.component.UIComponent;
+import javax.faces.component.UISelectItems;
 import javax.faces.webapp.UIComponentELTag;
 
 /**
@@ -22,18 +25,35 @@
  * @version $Revision$ $Date$
  */
 public class SelectItemsTag
-        extends UIComponentELTag
-{
+        extends UIComponentELTag {
     //private static final Log log = LogFactory.getLog(SelectItemsTag.class);
 
-    public String getComponentType()
-    {
+    private ValueExpression _value;
+
+    public void setValue(ValueExpression value) {
+        this._value = value;
+    }
+
+    public String getComponentType() {
         return "javax.faces.SelectItems";
     }
 
-    public String getRendererType()
-    {
+    public String getRendererType() {
         return null;
+    }
+
+
+    protected void setProperties(UIComponent component) {
+        super.setProperties(component);
+
+        if ( _value != null ) {
+            if (!_value.isLiteralText()) {
+                component.setValueExpression("value", _value);
+            } else {
+                ((UISelectItems) component).setValue(
+                        _value.getExpressionString());
+            }
+        }
     }
 
     // UISelectItems attributes