You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mm...@apache.org on 2005/05/15 12:58:16 UTC

svn commit: r170212 - in /myfaces/trunk: src/components/org/apache/myfaces/component/html/ext/ src/components/org/apache/myfaces/renderkit/html/ext/ src/components/org/apache/myfaces/taglib/html/ext/ tlds/ webapps/examples/

Author: mmarinschek
Date: Sun May 15 03:58:15 2005
New Revision: 170212

URL: http://svn.apache.org/viewcvs?rev=170212&view=rev
Log: (empty)

Modified:
    myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputText.java
    myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputTextarea.java
    myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java
    myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneMenu.java
    myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneRadio.java
    myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlCheckboxRenderer.java
    myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlMenuRenderer.java
    myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlRadioRenderer.java
    myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextRenderer.java
    myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextareaRenderer.java
    myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextTag.java
    myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextareaTag.java
    myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectManyCheckboxTag.java
    myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneMenuTag.java
    myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneRadioTag.java
    myfaces/trunk/tlds/myfaces_ext.tld
    myfaces/trunk/webapps/examples/sample2.jsp

Modified: myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputText.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputText.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputText.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputText.java Sun May 15 03:58:15 2005
@@ -50,6 +50,7 @@
 
     private String _enabledOnUserRole = null;
     private String _visibleOnUserRole = null;
+    
 	private Boolean _displayValueOnly = null;
 	private String _displayValueOnlyStyle = null;
 	private String _displayValueOnlyStyleClass = null;

Modified: myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputTextarea.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputTextarea.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputTextarea.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlInputTextarea.java Sun May 15 03:58:15 2005
@@ -17,6 +17,7 @@
 
 import org.apache.myfaces.component.UserRoleAware;
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.DisplayValueOnlyCapable;
 import org.apache.myfaces.component.html.util.HtmlComponentUtils;
 
 import javax.faces.context.FacesContext;
@@ -28,7 +29,7 @@
  */
 public class HtmlInputTextarea
         extends javax.faces.component.html.HtmlInputTextarea
-        implements UserRoleAware
+        implements UserRoleAware, DisplayValueOnlyCapable
 {
 
     public String getClientId(FacesContext context)
@@ -45,9 +46,13 @@
     //------------------ GENERATED CODE BEGIN (do not modify!) --------------------
 
     public static final String COMPONENT_TYPE = "org.apache.myfaces.HtmlInputTextarea";
+    private static final boolean DEFAULT_DISPLAYVALUEONLY = false;
 
     private String _enabledOnUserRole = null;
     private String _visibleOnUserRole = null;
+    private Boolean _displayValueOnly = null;
+	private String _displayValueOnlyStyle = null;
+	private String _displayValueOnlyStyleClass = null;
 
     public HtmlInputTextarea()
     {
@@ -87,10 +92,13 @@
 
     public Object saveState(FacesContext context)
     {
-        Object values[] = new Object[3];
+        Object values[] = new Object[6];
         values[0] = super.saveState(context);
         values[1] = _enabledOnUserRole;
         values[2] = _visibleOnUserRole;
+        values[3] = _displayValueOnly;
+        values[4] = _displayValueOnlyStyle;
+        values[5] = _displayValueOnlyStyleClass;
         return ((Object) (values));
     }
 
@@ -100,6 +108,41 @@
         super.restoreState(context, values[0]);
         _enabledOnUserRole = (String)values[1];
         _visibleOnUserRole = (String)values[2];
+        _displayValueOnly = (Boolean)values[3];
+        _displayValueOnlyStyle = (String)values[4];
+        _displayValueOnlyStyleClass = (String)values[5];
     }
     //------------------ GENERATED CODE END ---------------------------------------
+
+    public boolean isDisplayValueOnly() {
+        if (_displayValueOnly != null) return _displayValueOnly.booleanValue();
+        ValueBinding vb = getValueBinding("displayValueOnly");
+        Boolean v = vb != null ? (Boolean)vb.getValue(getFacesContext()) : null;
+        return v != null ? v.booleanValue() : DEFAULT_DISPLAYVALUEONLY;
+    }
+
+    public void setDisplayValueOnly(boolean displayValueOnly) {
+        _displayValueOnly = Boolean.valueOf(displayValueOnly);
+    }
+
+    public String getDisplayValueOnlyStyle() {
+        if (_displayValueOnlyStyle != null) return _displayValueOnlyStyle;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyle");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle) {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public String getDisplayValueOnlyStyleClass() {
+        if (_displayValueOnlyStyleClass != null) return _displayValueOnlyStyleClass;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyleClass");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass) {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }
+

Modified: myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java Sun May 15 03:58:15 2005
@@ -17,6 +17,7 @@
 
 import org.apache.myfaces.component.UserRoleAware;
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.DisplayValueOnlyCapable;
 import org.apache.myfaces.component.html.util.HtmlComponentUtils;
 
 import javax.faces.context.FacesContext;
@@ -28,7 +29,7 @@
  */
 public class HtmlSelectManyCheckbox
         extends javax.faces.component.html.HtmlSelectManyCheckbox
-        implements UserRoleAware
+        implements UserRoleAware, DisplayValueOnlyCapable
 {
     public String getClientId(FacesContext context)
     {
@@ -44,9 +45,13 @@
     //------------------ GENERATED CODE BEGIN (do not modify!) --------------------
 
     public static final String COMPONENT_TYPE = "org.apache.myfaces.HtmlSelectManyCheckbox";
+    private static final boolean DEFAULT_DISPLAYVALUEONLY = false;
 
     private String _enabledOnUserRole = null;
     private String _visibleOnUserRole = null;
+    private Boolean _displayValueOnly = null;
+	private String _displayValueOnlyStyle = null;
+	private String _displayValueOnlyStyleClass = null;
 
     public HtmlSelectManyCheckbox()
     {
@@ -86,10 +91,13 @@
 
     public Object saveState(FacesContext context)
     {
-        Object values[] = new Object[3];
+        Object values[] = new Object[6];
         values[0] = super.saveState(context);
         values[1] = _enabledOnUserRole;
         values[2] = _visibleOnUserRole;
+        values[3] = _displayValueOnly;
+        values[4] = _displayValueOnlyStyle;
+        values[5] = _displayValueOnlyStyleClass;
         return ((Object) (values));
     }
 
@@ -99,6 +107,40 @@
         super.restoreState(context, values[0]);
         _enabledOnUserRole = (String)values[1];
         _visibleOnUserRole = (String)values[2];
+        _displayValueOnly = (Boolean)values[3];
+        _displayValueOnlyStyle = (String)values[4];
+        _displayValueOnlyStyleClass = (String)values[5];
     }
     //------------------ GENERATED CODE END ---------------------------------------
+
+    public boolean isDisplayValueOnly() {
+        if (_displayValueOnly != null) return _displayValueOnly.booleanValue();
+        ValueBinding vb = getValueBinding("displayValueOnly");
+        Boolean v = vb != null ? (Boolean)vb.getValue(getFacesContext()) : null;
+        return v != null ? v.booleanValue() : DEFAULT_DISPLAYVALUEONLY;
+    }
+
+    public void setDisplayValueOnly(boolean displayValueOnly) {
+        _displayValueOnly = Boolean.valueOf(displayValueOnly);
+    }
+
+    public String getDisplayValueOnlyStyle() {
+        if (_displayValueOnlyStyle != null) return _displayValueOnlyStyle;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyle");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle) {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public String getDisplayValueOnlyStyleClass() {
+        if (_displayValueOnlyStyleClass != null) return _displayValueOnlyStyleClass;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyleClass");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass) {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneMenu.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneMenu.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneMenu.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneMenu.java Sun May 15 03:58:15 2005
@@ -17,6 +17,7 @@
 
 import org.apache.myfaces.component.UserRoleAware;
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.DisplayValueOnlyCapable;
 import org.apache.myfaces.component.html.util.HtmlComponentUtils;
 
 import javax.faces.context.FacesContext;
@@ -28,7 +29,7 @@
  */
 public class HtmlSelectOneMenu
         extends javax.faces.component.html.HtmlSelectOneMenu
-        implements UserRoleAware
+        implements UserRoleAware, DisplayValueOnlyCapable
 {
     public String getClientId(FacesContext context)
     {
@@ -44,9 +45,13 @@
     //------------------ GENERATED CODE BEGIN (do not modify!) --------------------
 
     public static final String COMPONENT_TYPE = "org.apache.myfaces.HtmlSelectOneMenu";
+    private static final boolean DEFAULT_DISPLAYVALUEONLY = false;
 
     private String _enabledOnUserRole = null;
     private String _visibleOnUserRole = null;
+    private Boolean _displayValueOnly = null;
+	private String _displayValueOnlyStyle = null;
+	private String _displayValueOnlyStyleClass = null;
 
     public HtmlSelectOneMenu()
     {
@@ -86,10 +91,13 @@
 
     public Object saveState(FacesContext context)
     {
-        Object values[] = new Object[3];
+        Object values[] = new Object[6];
         values[0] = super.saveState(context);
         values[1] = _enabledOnUserRole;
         values[2] = _visibleOnUserRole;
+        values[3] = _displayValueOnly;
+        values[4] = _displayValueOnlyStyle;
+        values[5] = _displayValueOnlyStyleClass;
         return ((Object) (values));
     }
 
@@ -99,6 +107,40 @@
         super.restoreState(context, values[0]);
         _enabledOnUserRole = (String)values[1];
         _visibleOnUserRole = (String)values[2];
+        _displayValueOnly = (Boolean)values[3];
+        _displayValueOnlyStyle = (String)values[4];
+        _displayValueOnlyStyleClass = (String)values[5];
     }
     //------------------ GENERATED CODE END ---------------------------------------
+
+    public boolean isDisplayValueOnly() {
+        if (_displayValueOnly != null) return _displayValueOnly.booleanValue();
+        ValueBinding vb = getValueBinding("displayValueOnly");
+        Boolean v = vb != null ? (Boolean)vb.getValue(getFacesContext()) : null;
+        return v != null ? v.booleanValue() : DEFAULT_DISPLAYVALUEONLY;
+    }
+
+    public void setDisplayValueOnly(boolean displayValueOnly) {
+        _displayValueOnly = Boolean.valueOf(displayValueOnly);
+    }
+
+    public String getDisplayValueOnlyStyle() {
+        if (_displayValueOnlyStyle != null) return _displayValueOnlyStyle;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyle");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle) {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public String getDisplayValueOnlyStyleClass() {
+        if (_displayValueOnlyStyleClass != null) return _displayValueOnlyStyleClass;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyleClass");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass) {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneRadio.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneRadio.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneRadio.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/component/html/ext/HtmlSelectOneRadio.java Sun May 15 03:58:15 2005
@@ -17,6 +17,7 @@
 
 import org.apache.myfaces.component.UserRoleAware;
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.DisplayValueOnlyCapable;
 import org.apache.myfaces.component.html.util.HtmlComponentUtils;
 
 import javax.faces.context.FacesContext;
@@ -28,7 +29,7 @@
  */
 public class HtmlSelectOneRadio
         extends javax.faces.component.html.HtmlSelectOneRadio
-        implements UserRoleAware
+        implements UserRoleAware, DisplayValueOnlyCapable
 {
     public String getClientId(FacesContext context)
     {
@@ -44,9 +45,13 @@
     //------------------ GENERATED CODE BEGIN (do not modify!) --------------------
 
     public static final String COMPONENT_TYPE = "org.apache.myfaces.HtmlSelectOneRadio";
+    private static final boolean DEFAULT_DISPLAYVALUEONLY = false;
 
     private String _enabledOnUserRole = null;
     private String _visibleOnUserRole = null;
+    private Boolean _displayValueOnly = null;
+	private String _displayValueOnlyStyle = null;
+	private String _displayValueOnlyStyleClass = null;
 
     public HtmlSelectOneRadio()
     {
@@ -86,10 +91,13 @@
 
     public Object saveState(FacesContext context)
     {
-        Object values[] = new Object[3];
+        Object values[] = new Object[6];
         values[0] = super.saveState(context);
         values[1] = _enabledOnUserRole;
         values[2] = _visibleOnUserRole;
+        values[3] = _displayValueOnly;
+        values[4] = _displayValueOnlyStyle;
+        values[5] = _displayValueOnlyStyleClass;
         return ((Object) (values));
     }
 
@@ -99,6 +107,40 @@
         super.restoreState(context, values[0]);
         _enabledOnUserRole = (String)values[1];
         _visibleOnUserRole = (String)values[2];
+        _displayValueOnly = (Boolean)values[3];
+        _displayValueOnlyStyle = (String)values[4];
+        _displayValueOnlyStyleClass = (String)values[5];
     }
     //------------------ GENERATED CODE END ---------------------------------------
+
+        public boolean isDisplayValueOnly() {
+        if (_displayValueOnly != null) return _displayValueOnly.booleanValue();
+        ValueBinding vb = getValueBinding("displayValueOnly");
+        Boolean v = vb != null ? (Boolean)vb.getValue(getFacesContext()) : null;
+        return v != null ? v.booleanValue() : DEFAULT_DISPLAYVALUEONLY;
+    }
+
+    public void setDisplayValueOnly(boolean displayValueOnly) {
+        _displayValueOnly = Boolean.valueOf(displayValueOnly);
+    }
+
+    public String getDisplayValueOnlyStyle() {
+        if (_displayValueOnlyStyle != null) return _displayValueOnlyStyle;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyle");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle) {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public String getDisplayValueOnlyStyleClass() {
+        if (_displayValueOnlyStyleClass != null) return _displayValueOnlyStyleClass;
+        ValueBinding vb = getValueBinding("displayValueOnlyStyleClass");
+        return vb != null ? (String)vb.getValue(getFacesContext()) : null;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass) {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlCheckboxRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlCheckboxRenderer.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlCheckboxRenderer.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlCheckboxRenderer.java Sun May 15 03:58:15 2005
@@ -16,19 +16,26 @@
 package org.apache.myfaces.renderkit.html.ext;
 
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.html.ext.HtmlSelectManyCheckbox;
 import org.apache.myfaces.custom.checkbox.HtmlCheckbox;
 import org.apache.myfaces.renderkit.RendererUtils;
+import org.apache.myfaces.renderkit.JSFAttr;
 import org.apache.myfaces.renderkit.html.HtmlCheckboxRendererBase;
+import org.apache.myfaces.renderkit.html.HTML;
+import org.apache.myfaces.renderkit.html.HtmlRendererUtils;
 
 import javax.faces.FacesException;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UISelectMany;
+import javax.faces.component.UISelectBoolean;
 import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
 import javax.faces.convert.Converter;
 import javax.faces.model.SelectItem;
 import java.io.IOException;
 import java.util.List;
 import java.util.Set;
+import java.util.Iterator;
 
 
 /**
@@ -40,6 +47,12 @@
 {
     //private static final Log log = LogFactory.getLog(HtmlRadioRenderer.class);
 
+    private static final String PAGE_DIRECTION = "pageDirection";
+
+    private static final String LINE_DIRECTION = "lineDirection";
+
+    private static final String EXTERNAL_TRUE_VALUE = "true";
+
     private static final String LAYOUT_SPREAD = "spread";
 
     public void encodeEnd(FacesContext context, UIComponent component) throws IOException
@@ -60,7 +73,8 @@
             }
             else
             {
-                super.encodeEnd(context, component);
+                //super.encodeEnd(context, component);
+                chooseRenderMode(context, component);
             }
         }
         else
@@ -69,6 +83,135 @@
         }
     }
 
+    private void chooseRenderMode(FacesContext facesContext, UIComponent uiComponent)
+        throws IOException
+    {
+        RendererUtils.checkParamValidity(facesContext, uiComponent, null);
+        if (uiComponent instanceof UISelectBoolean)
+        {
+            Boolean value = RendererUtils.getBooleanValue( uiComponent );
+            boolean isChecked = value != null ? value.booleanValue() : false;
+            renderCheckbox(facesContext, uiComponent, EXTERNAL_TRUE_VALUE,
+                    null, isChecked, true);
+        }
+        else if (uiComponent instanceof UISelectMany)
+        {
+            renderCheckboxList(facesContext, (UISelectMany) uiComponent);
+        }
+        else
+        {
+            throw new IllegalArgumentException("Unsupported component class "
+                    + uiComponent.getClass().getName());
+        }
+    }
+
+    public void renderCheckboxList(FacesContext facesContext,
+            UISelectMany selectMany) throws IOException
+    {
+
+        String layout = getLayout(selectMany);
+        boolean pageDirectionLayout = false; //Default to lineDirection
+        if (layout != null)
+        {
+            if (layout.equals(PAGE_DIRECTION))
+            {
+                pageDirectionLayout = true;
+            }
+            else if (layout.equals(LINE_DIRECTION))
+            {
+                pageDirectionLayout = false;
+            }
+            //else
+            //{
+            //    log.error("Wrong layout attribute for component "
+            //            + selectMany.getClientId(facesContext) + ": " + layout);
+            //}
+        }
+
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.TABLE_ELEM, selectMany);
+        HtmlRendererUtils.renderHTMLAttributes(writer, selectMany,
+                HTML.SELECT_TABLE_PASSTHROUGH_ATTRIBUTES);
+        HtmlRendererUtils.writeIdIfNecessary(writer, selectMany, facesContext);
+
+        if (!pageDirectionLayout)
+            writer.startElement(HTML.TR_ELEM, selectMany);
+
+        Converter converter;
+        try
+        {
+            converter = RendererUtils.findUISelectManyConverter(facesContext,
+                    selectMany);
+        }
+        catch (FacesException e)
+        {
+            //log.error("Error finding Converter for component with id "
+            //        + selectMany.getClientId(facesContext));
+            converter = null;
+        }
+
+        Set lookupSet = RendererUtils.getSubmittedValuesAsSet(facesContext, selectMany, converter, selectMany);
+        boolean useSubmittedValues = lookupSet != null;
+
+        if (!useSubmittedValues) {
+            lookupSet = RendererUtils.getSelectedValuesAsSet(facesContext, selectMany, converter, selectMany);
+        }
+
+        for (Iterator it = RendererUtils.getSelectItemList(selectMany)
+                .iterator(); it.hasNext();) {
+            SelectItem selectItem = (SelectItem) it.next();
+            Object itemValue = selectItem.getValue(); // TODO : Check here for getSubmittedValue. Look at RendererUtils.getValue
+
+            String itemStrValue;
+            if (converter == null) {
+                itemStrValue = itemValue.toString();
+            } else {
+                itemStrValue = converter.getAsString(facesContext, selectMany,
+                        itemValue);
+            }
+
+            writer.write("\t\t");
+            if (pageDirectionLayout)
+                writer.startElement(HTML.TR_ELEM, selectMany);
+            writer.startElement(HTML.TD_ELEM, selectMany);
+            writer.startElement(HTML.LABEL_ELEM, selectMany);
+
+            boolean checked = (useSubmittedValues && lookupSet
+                    .contains(itemStrValue))
+                    || (!useSubmittedValues && lookupSet.contains(itemValue));
+
+            if(selectMany instanceof HtmlSelectManyCheckbox)
+            {
+                if(((HtmlSelectManyCheckbox)selectMany).isDisplayValueOnly())
+                {
+                    renderCheckboxValueOnly(facesContext,
+                                            (HtmlSelectManyCheckbox)selectMany,
+                                            itemStrValue,
+                                            selectItem.getLabel(),
+                                            lookupSet.contains(itemStrValue),
+                                            true);
+                }
+                else
+                {
+                    renderCheckbox(facesContext,
+                                   selectMany,
+                                   itemStrValue,
+                                   selectItem.getLabel(),
+                                   checked,
+                                   false);
+                }
+            }
+            writer.endElement(HTML.LABEL_ELEM);
+            writer.endElement(HTML.TD_ELEM);
+            if (pageDirectionLayout)
+                writer.endElement(HTML.TR_ELEM);
+        }
+
+        if (!pageDirectionLayout)
+            writer.endElement(HTML.TR_ELEM);
+        writer.endElement(HTML.TABLE_ELEM);
+    }
 
     private void renderSingleCheckbox(FacesContext facesContext, HtmlCheckbox checkbox) throws IOException
     {
@@ -125,13 +268,124 @@
         //TODO: we must cache this Set!
         Set lookupSet = RendererUtils.getSelectedValuesAsSet(facesContext, uiComponent, converter, uiSelectMany);
 
-        renderCheckbox(facesContext,
-                       uiSelectMany,
-                       itemStrValue,
-                       selectItem.getLabel(),
-                       lookupSet.contains(itemStrValue), true);
+        if(uiSelectMany instanceof HtmlSelectManyCheckbox &&
+           ((HtmlSelectManyCheckbox)uiSelectMany).isDisplayValueOnly())
+        {
+            renderCheckboxValueOnly(facesContext,
+                                    (HtmlSelectManyCheckbox)uiSelectMany,
+                                    itemStrValue,
+                                    selectItem.getLabel(),
+                                    lookupSet.contains(itemStrValue),
+                                    true);
+        }
+        else
+        {
+            renderCheckbox(facesContext,
+                           uiSelectMany,
+                           itemStrValue,
+                           selectItem.getLabel(),
+                           lookupSet.contains(itemStrValue),
+                           true);
+        }
     }
 
+    protected void renderCheckboxValueOnly(FacesContext facesContext,
+                                           HtmlSelectManyCheckbox checkbox,
+                                           String value,
+                                           String label,
+                                           boolean checked,
+                                           boolean renderId)
+        throws IOException
+    {
+        String clientId = checkbox.getClientId(facesContext);
+
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.SPAN_ELEM, checkbox);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+        if (renderId)
+        {
+            HtmlRendererUtils.writeIdIfNecessary(writer, checkbox, facesContext);
+        }
+
+        if (checked)
+        {
+            writer.writeAttribute(HTML.CHECKED_ATTR, HTML.CHECKED_ATTR, null);
+        }
+
+//        if ((value != null) && (value.length() > 0))
+//        {
+//            writer.writeAttribute(HTML.VALUE_ATTR, value, null);
+//        }
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, checkbox,
+                HTML.INPUT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(checkbox.getDisplayValueOnlyStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, checkbox.getDisplayValueOnlyStyle(), null);
+        if(checkbox.getDisplayValueOnlyStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, checkbox.getDisplayValueOnlyStyleClass(), null);
+
+        String strValue = RendererUtils.getStringValue(facesContext, checkbox);
+        writer.writeText(strValue, JSFAttr.VALUE_ATTR);
+        //writer.writeText("", null); // close input
+        if ((label != null) && (label.length() > 0))
+        {
+            writer.write(HTML.NBSP_ENTITY);
+            writer.writeText(label, null);
+        }
+        //writer.endElement(HTML.SPAN_ELEM);
+    }
+
+    protected void renderCheckbox(FacesContext facesContext,
+                                  HtmlSelectManyCheckbox checkbox,
+                                  String value,
+                                  String label,
+                                  boolean checked,
+                                  boolean renderId)
+        throws IOException
+    {
+        String clientId = checkbox.getClientId(facesContext);
+
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.INPUT_ELEM, checkbox);
+        writer.writeAttribute(HTML.TYPE_ATTR, HTML.INPUT_TYPE_CHECKBOX, null);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+        if (renderId)
+        {
+            HtmlRendererUtils.writeIdIfNecessary(writer, checkbox, facesContext);
+        }
+
+        if (checked)
+        {
+            writer.writeAttribute(HTML.CHECKED_ATTR, HTML.CHECKED_ATTR, null);
+        }
+
+        if ((value != null) && (value.length() > 0))
+        {
+            writer.writeAttribute(HTML.VALUE_ATTR, value, null);
+        }
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, checkbox,
+                HTML.INPUT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(checkbox.getStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, checkbox.getStyle(), null);
+        if(checkbox.getStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, checkbox.getStyleClass(), null);
+
+        if (isDisabled(facesContext, checkbox))
+        {
+            writer.writeAttribute(HTML.DISABLED_ATTR, Boolean.TRUE, null);
+        }
+        writer.writeText("", null); // close input
+        if ((label != null) && (label.length() > 0))
+        {
+            writer.write(HTML.NBSP_ENTITY);
+            writer.writeText(label, null);
+        }
+    }
 
     protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
     {

Modified: myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlMenuRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlMenuRenderer.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlMenuRenderer.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlMenuRenderer.java Sun May 15 03:58:15 2005
@@ -16,10 +16,23 @@
 package org.apache.myfaces.renderkit.html.ext;
 
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.html.ext.HtmlSelectOneMenu;
 import org.apache.myfaces.renderkit.html.HtmlMenuRendererBase;
+import org.apache.myfaces.renderkit.html.HtmlRendererUtils;
+import org.apache.myfaces.renderkit.html.HTML;
+import org.apache.myfaces.renderkit.RendererUtils;
 
 import javax.faces.component.UIComponent;
+import javax.faces.component.UISelectMany;
+import javax.faces.component.UISelectOne;
 import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
+import javax.faces.convert.Converter;
+import javax.faces.FacesException;
+import javax.faces.model.SelectItem;
+import javax.faces.model.SelectItemGroup;
+import java.io.IOException;
+import java.util.*;
 
 
 /**
@@ -39,6 +52,220 @@
         else
         {
             return super.isDisabled(facesContext, uiComponent);
+        }
+    }
+
+    public void encodeEnd(FacesContext facesContext, UIComponent component)
+            throws IOException
+    {
+        if(component instanceof HtmlSelectOneMenu)
+        {
+            internalRenderSelect(facesContext, component, isDisabled(facesContext, component), 1, false);
+        }
+        else
+        {
+            super.encodeEnd(facesContext, component);
+        }
+    }
+
+    private static void internalRenderSelect(FacesContext facesContext,
+            UIComponent uiComponent, boolean disabled, int size,
+            boolean selectMany) throws IOException {
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.SELECT_ELEM, uiComponent);
+        HtmlRendererUtils.writeIdIfNecessary(writer, uiComponent, facesContext);
+        writer.writeAttribute(HTML.NAME_ATTR, uiComponent.getClientId(facesContext), null);
+
+        List selectItemList;
+        Converter converter;
+        if (selectMany) {
+            writer.writeAttribute(HTML.MULTIPLE_ATTR, "true", null);
+            selectItemList = RendererUtils.getSelectItemList((UISelectMany) uiComponent);
+            try {
+                converter = RendererUtils.findUISelectManyConverter(
+                        facesContext, (UISelectMany) uiComponent);
+            } catch (FacesException e) {
+//                log.error("Error finding Converter for component with id "
+//                        + uiComponent.getClientId(facesContext));
+                converter = null;
+            }
+        } else {
+            selectItemList = RendererUtils
+                    .getSelectItemList((UISelectOne) uiComponent);
+            try {
+                converter = RendererUtils.findUIOutputConverter(facesContext,
+                        (UISelectOne) uiComponent);
+            } catch (FacesException e) {
+//                log.error("Error finding Converter for component with id "
+//                        + uiComponent.getClientId(facesContext));
+                converter = null;
+            }
+        }
+
+        if (size == 0) {
+            //No size given (Listbox) --> size is number of select items
+            writer.writeAttribute(HTML.SIZE_ATTR, Integer
+                    .toString(selectItemList.size()), null);
+        } else {
+            writer.writeAttribute(HTML.SIZE_ATTR, Integer.toString(size), null);
+        }
+        HtmlRendererUtils.renderHTMLAttributes(writer, uiComponent,
+                HTML.SELECT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+        if (disabled) {
+            writer.writeAttribute(HTML.DISABLED_ATTR, Boolean.TRUE, null);
+        }
+
+        Set lookupSet;
+        boolean useSubmittedValue;
+        if (selectMany) {
+            UISelectMany uiSelectMany = (UISelectMany) uiComponent;
+            lookupSet = RendererUtils.getSubmittedValuesAsSet(facesContext, uiComponent, converter, uiSelectMany);
+            if (lookupSet == null)
+            {
+                useSubmittedValue = false;
+                lookupSet = RendererUtils.getSelectedValuesAsSet(facesContext, uiComponent, converter, uiSelectMany);
+            }
+            else
+            {
+                useSubmittedValue = true;
+            }
+        } else {
+            UISelectOne uiSelectOne = (UISelectOne) uiComponent;
+            Object lookup = uiSelectOne.getSubmittedValue();
+            if (lookup == null)
+            {
+                useSubmittedValue = false;
+                lookup = uiSelectOne.getValue();
+            }
+            else
+            {
+                useSubmittedValue = true;
+            }
+            String lookupString = RendererUtils.getConvertedStringValue(facesContext, uiComponent, converter, lookup);
+            lookupSet = Collections.singleton(lookupString);
+        }
+
+        if(uiComponent instanceof HtmlSelectOneMenu)
+        {
+            if(((HtmlSelectOneMenu)uiComponent).isDisplayValueOnly())
+                renderSelectOptions(facesContext, (HtmlSelectOneMenu)uiComponent, converter, lookupSet,
+                                    useSubmittedValue, selectItemList);
+            else
+                renderSelectOptionsValueOnly(facesContext, (HtmlSelectOneMenu)uiComponent,
+                                             converter, lookupSet,
+                                             useSubmittedValue, selectItemList);
+        }
+        // bug #970747: force separate end tag
+        writer.writeText("", null);
+        writer.endElement(HTML.SELECT_ELEM);
+    }
+
+    /**
+     * Renders the select options for a <code>UIComponent</code> that is
+     * rendered as an HTML select element.
+     *
+     * @param context
+     *            the current <code>FacesContext</code>.
+     * @param menu
+     *            the <code>menu</code> whose options need to be
+     *            rendered.
+     * @param converter
+     *            <code>component</code>'s converter
+     * @param lookupSet
+     *            the <code>Set</code> to use to look up selected options
+     * @param useSubmittedValue
+     *            whether we are using the submittedValue
+     * @param selectItemList
+     *            the <code>List</code> of <code>SelectItem</code> s to be
+     *            rendered as HTML option elements.
+     * @throws IOException
+     */
+    private static void renderSelectOptions(FacesContext context,
+            HtmlSelectOneMenu menu, Converter converter, Set lookupSet,
+            boolean useSubmittedValue, List selectItemList) throws IOException {
+        ResponseWriter writer = context.getResponseWriter();
+
+        for (Iterator it = selectItemList.iterator(); it.hasNext();) {
+            SelectItem selectItem = (SelectItem) it.next();
+
+            if (selectItem instanceof SelectItemGroup) {
+                writer.startElement(HTML.OPTGROUP_ELEM, null);
+                writer.writeAttribute(HTML.LABEL_ATTR, selectItem.getLabel(),
+                        null);
+                SelectItem[] selectItems = ((SelectItemGroup) selectItem)
+                        .getSelectItems();
+                renderSelectOptions(context, menu, converter, lookupSet,
+                        useSubmittedValue, Arrays.asList(selectItems));
+                writer.endElement(HTML.OPTGROUP_ELEM);
+            } else {
+                String itemStrValue = RendererUtils.getConvertedStringValue(context, menu,
+                        converter, selectItem);
+
+                writer.write("\t\t");
+                writer.startElement(HTML.OPTION_ELEM, null);
+                if (itemStrValue != null) {
+                    writer.writeAttribute(HTML.VALUE_ATTR, itemStrValue, null);
+                }
+
+                if (lookupSet.contains(itemStrValue)) {  //TODO/FIX: we always compare the String vales, better fill lookupSet with Strings only when useSubmittedValue==true, else use the real item value Objects
+                    writer.writeAttribute(HTML.SELECTED_ATTR,
+                            HTML.SELECTED_ATTR, null);
+                }
+
+                if (selectItem.isDisabled()) {
+                    writer.writeAttribute(HTML.DISABLED_ATTR,
+                            HTML.DISABLED_ATTR, null);
+                }
+
+                writer.writeText(selectItem.getLabel(), null);
+
+                writer.endElement(HTML.OPTION_ELEM);
+            }
+        }
+    }
+
+    private static void renderSelectOptionsValueOnly(FacesContext context,
+            HtmlSelectOneMenu menu, Converter converter, Set lookupSet,
+            boolean useSubmittedValue, List selectItemList) throws IOException {
+        ResponseWriter writer = context.getResponseWriter();
+
+        for (Iterator it = selectItemList.iterator(); it.hasNext();) {
+            SelectItem selectItem = (SelectItem) it.next();
+
+            if (selectItem instanceof SelectItemGroup) {
+                writer.startElement(HTML.OPTGROUP_ELEM, null);
+                writer.writeAttribute(HTML.LABEL_ATTR, selectItem.getLabel(),
+                        null);
+                SelectItem[] selectItems = ((SelectItemGroup) selectItem)
+                        .getSelectItems();
+                renderSelectOptions(context, menu, converter, lookupSet,
+                        useSubmittedValue, Arrays.asList(selectItems));
+                writer.endElement(HTML.OPTGROUP_ELEM);
+            } else {
+                String itemStrValue = RendererUtils.getConvertedStringValue(context, menu,
+                        converter, selectItem);
+
+                writer.write("\t\t");
+                writer.startElement(HTML.SPAN_ELEM, null);
+                if (itemStrValue != null) {
+                    writer.writeAttribute(HTML.VALUE_ATTR, itemStrValue, null);
+                }
+
+                if (lookupSet.contains(itemStrValue)) {  //TODO/FIX: we always compare the String vales, better fill lookupSet with Strings only when useSubmittedValue==true, else use the real item value Objects
+                    writer.writeAttribute(HTML.SELECTED_ATTR,
+                            HTML.SELECTED_ATTR, null);
+                }
+
+                if (selectItem.isDisabled()) {
+                    writer.writeAttribute(HTML.DISABLED_ATTR,
+                            HTML.DISABLED_ATTR, null);
+                }
+
+                writer.writeText(selectItem.getLabel(), null);
+
+                writer.endElement(HTML.SPAN_ELEM);
+            }
         }
     }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlRadioRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlRadioRenderer.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlRadioRenderer.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlRadioRenderer.java Sun May 15 03:58:15 2005
@@ -16,20 +16,25 @@
 package org.apache.myfaces.renderkit.html.ext;
 
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.html.ext.HtmlSelectOneRadio;
 import org.apache.myfaces.custom.radio.HtmlRadio;
 import org.apache.myfaces.renderkit.RendererUtils;
+import org.apache.myfaces.renderkit.JSFAttr;
 import org.apache.myfaces.renderkit.html.HTML;
 import org.apache.myfaces.renderkit.html.HtmlRadioRendererBase;
+import org.apache.myfaces.renderkit.html.HtmlRendererUtils;
 
 import javax.faces.FacesException;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UISelectOne;
+import javax.faces.component.UIInput;
 import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
 import javax.faces.convert.Converter;
 import javax.faces.model.SelectItem;
 import java.io.IOException;
 import java.util.List;
+import java.util.Iterator;
 
 
 /**
@@ -44,6 +49,9 @@
 
     private static final String LAYOUT_SPREAD = "spread";
 
+    private static final String PAGE_DIRECTION = "pageDirection";
+    private static final String LINE_DIRECTION = "lineDirection";
+
     public void encodeEnd(FacesContext context, UIComponent component) throws IOException
     {
         if (context == null) throw new NullPointerException("context");
@@ -62,7 +70,8 @@
             }
             else
             {
-                super.encodeEnd(context, component);
+                //super.encodeEnd(context, component);
+                renderRadio(context, (UISelectOne)component);
             }
         }
         else
@@ -71,6 +80,90 @@
         }
     }
 
+    private void renderRadio(FacesContext facesContext, UISelectOne selectOne) throws IOException
+    {
+//        RendererUtils.checkParamValidity(facesContext, uiComponent, UISelectOne.class);
+        String layout = getLayout(selectOne);
+
+        boolean pageDirectionLayout = false; // Defaults to LINE_DIRECTION
+        if (layout != null)
+        {
+            if (layout.equals(PAGE_DIRECTION))
+            {
+                pageDirectionLayout = true;
+            }
+            else if (layout.equals(LINE_DIRECTION))
+            {
+                pageDirectionLayout = false;
+            }
+            else
+            {
+                //log.error("Wrong layout attribute for component " + selectOne.getClientId(facesContext) + ": " + layout);
+            }
+        }
+
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.TABLE_ELEM, selectOne);
+        HtmlRendererUtils.renderHTMLAttributes(writer, selectOne,
+                                               HTML.SELECT_TABLE_PASSTHROUGH_ATTRIBUTES);
+        HtmlRendererUtils.writeIdIfNecessary(writer, selectOne, facesContext);
+
+        if (!pageDirectionLayout) writer.startElement(HTML.TR_ELEM, selectOne);
+
+        Converter converter;
+        List selectItemList = RendererUtils.getSelectItemList(selectOne);
+        try
+        {
+            converter = RendererUtils.findUIOutputConverter(facesContext, selectOne);
+        }
+        catch (FacesException e)
+        {
+            //log.error("Error finding Converter for component with id " + uiComponent.getClientId(facesContext));
+            converter = null;
+        }
+
+        String currentValueStr = RendererUtils.getStringValue(facesContext, selectOne);
+
+        for (Iterator it = selectItemList.iterator(); it.hasNext(); )
+        {
+            SelectItem selectItem = (SelectItem)it.next();
+            String itemStrValue = RendererUtils.getConvertedStringValue(facesContext, selectOne, converter, selectItem.getValue());
+
+            writer.write("\t\t");
+            if (pageDirectionLayout) writer.startElement(HTML.TR_ELEM, selectOne);
+            writer.startElement(HTML.TD_ELEM, selectOne);
+            writer.startElement(HTML.LABEL_ELEM, selectOne);
+            if(selectOne instanceof HtmlSelectOneRadio)
+            {
+                if(((HtmlSelectOneRadio)selectOne).isDisplayValueOnly())
+                    renderRadioValueOnly(facesContext,
+                                         (HtmlSelectOneRadio)selectOne,
+                                         itemStrValue,
+                                         selectItem.getLabel(),
+                                         currentValueStr.equals(itemStrValue), false);
+                else
+                    renderRadio(facesContext,
+                                selectOne,
+                                itemStrValue,
+                                selectItem.getLabel(),
+                                currentValueStr.equals(itemStrValue), false);
+            }
+            else
+            {
+                renderRadio(facesContext,
+                            selectOne,
+                            itemStrValue,
+                            selectItem.getLabel(),
+                            currentValueStr.equals(itemStrValue), false);
+            }
+            writer.endElement(HTML.LABEL_ELEM);
+            writer.endElement(HTML.TD_ELEM);
+            if (pageDirectionLayout) writer.endElement(HTML.TR_ELEM);
+        }
+        if (!pageDirectionLayout) writer.endElement(HTML.TR_ELEM);
+        writer.endElement(HTML.TABLE_ELEM);
+    }
 
     private void renderRadio(FacesContext facesContext, HtmlRadio radio) throws IOException
     {
@@ -127,17 +220,75 @@
         ResponseWriter writer = facesContext.getResponseWriter();
 
         writer.startElement(HTML.LABEL_ELEM, uiSelectOne);
-
-        renderRadio(facesContext,
-                    uiSelectOne,
-                    itemStrValue,
-                    selectItem.getLabel(),
-                    currentValue == null && itemValue == null ||
-                    currentValue != null && currentValue.equals(itemValue), false);
+        if(uiSelectOne instanceof HtmlSelectOneRadio)
+        {
+            if(((HtmlSelectOneRadio)uiSelectOne).isDisplayValueOnly())
+                renderRadioValueOnly(facesContext,
+                                     (HtmlSelectOneRadio)uiSelectOne,
+                                     itemStrValue,
+                                     selectItem.getLabel(),
+                                     currentValue == null && itemValue == null ||
+                                     currentValue != null && currentValue.equals(itemValue), false);
+            else
+                renderRadio(facesContext,
+                            uiSelectOne,
+                            itemStrValue,
+                            selectItem.getLabel(),
+                            currentValue == null && itemValue == null ||
+                            currentValue != null && currentValue.equals(itemValue), false);
+        }
+        else
+        {
+            renderRadio(facesContext,
+                        uiSelectOne,
+                        itemStrValue,
+                        selectItem.getLabel(),
+                        currentValue == null && itemValue == null ||
+                        currentValue != null && currentValue.equals(itemValue), false);
+        }
         writer.endElement(HTML.LABEL_ELEM);
     }
 
 
+
+    protected void renderRadioValueOnly(FacesContext facesContext,
+                                        HtmlSelectOneRadio radio,
+                                        String value,
+                                        String label,
+                                        boolean checked,
+                                        boolean renderId)
+        throws IOException
+    {
+        String clientId = radio.getClientId(facesContext);
+
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        writer.startElement(HTML.SPAN_ELEM, radio);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+
+        if (renderId)
+        {
+            writer.writeAttribute(HTML.ID_ATTR, clientId, null);
+        }
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, radio, HTML.INPUT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        String strValue = RendererUtils.getStringValue(facesContext, radio);
+        writer.writeText(strValue, JSFAttr.VALUE_ATTR);
+//        if ((value != null) && (value.length() > 0))
+//        {
+//            writer.writeAttribute(HTML.VALUE_ATTR, value, null);
+//        }
+
+        writer.endElement(HTML.SPAN_ELEM);
+
+        if ((label != null) && (label.length() > 0))
+        {
+            writer.write(HTML.NBSP_ENTITY);
+            writer.writeText(label, null);
+        }
+    }
+
     protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)
     {
         if (!UserRoleUtils.isEnabledOnUserRole(uiComponent))
@@ -149,7 +300,6 @@
             return super.isDisabled(facesContext, uiComponent);
         }
     }
-
 
     public void decode(FacesContext facesContext, UIComponent uiComponent)
     {

Modified: myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextRenderer.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextRenderer.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextRenderer.java Sun May 15 03:58:15 2005
@@ -16,10 +16,17 @@
 package org.apache.myfaces.renderkit.html.ext;
 
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.html.ext.HtmlInputText;
 import org.apache.myfaces.renderkit.html.HtmlTextRendererBase;
+import org.apache.myfaces.renderkit.html.HTML;
+import org.apache.myfaces.renderkit.html.HtmlRendererUtils;
+import org.apache.myfaces.renderkit.RendererUtils;
+import org.apache.myfaces.renderkit.JSFAttr;
 
 import javax.faces.component.UIComponent;
 import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
+import java.io.IOException;
 
 
 /**
@@ -40,5 +47,73 @@
         {
             return super.isDisabled(facesContext, uiComponent);
         }
+    }
+
+    public void encodeEnd(FacesContext facesContext, UIComponent component)
+        throws IOException
+    {
+        if(component instanceof HtmlInputText)
+        {
+            if(((HtmlInputText)component).isDisplayValueOnly())
+                renderInputValueOnly(facesContext, (HtmlInputText)component);
+            else
+                renderInput(facesContext, (HtmlInputText)component);
+        }
+        else
+        {
+            super.encodeEnd(facesContext, component);
+        }
+    }
+
+    protected void renderInput(FacesContext facesContext, HtmlInputText inputText)
+        throws IOException
+    {
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        String clientId = inputText.getClientId(facesContext);
+        String value = RendererUtils.getStringValue(facesContext, inputText);
+
+        writer.startElement(HTML.INPUT_ELEM, inputText);
+        writer.writeAttribute(HTML.ID_ATTR, clientId, null);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+        writer.writeAttribute(HTML.TYPE_ATTR, HTML.INPUT_TYPE_TEXT, null);
+        if (value != null)
+            writer.writeAttribute(HTML.VALUE_ATTR, value, JSFAttr.VALUE_ATTR);
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, inputText, HTML.INPUT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(inputText.getStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, inputText.getStyle(), null);
+        if(inputText.getStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, inputText.getStyleClass(), null);
+
+        if (isDisabled(facesContext, inputText))
+            writer.writeAttribute(HTML.DISABLED_ATTR, Boolean.TRUE, null);
+
+        writer.endElement(HTML.INPUT_ELEM);
+    }
+
+    protected void renderInputValueOnly(FacesContext facesContext, HtmlInputText inputText)
+        throws IOException
+    {
+        ResponseWriter writer = facesContext.getResponseWriter();
+
+        String clientId = inputText.getClientId(facesContext);
+
+        writer.startElement(HTML.SPAN_ELEM, inputText);
+
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, inputText, HTML.INPUT_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(inputText.getDisplayValueOnlyStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, inputText.getDisplayValueOnlyStyle(), null);
+        if(inputText.getDisplayValueOnlyStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, inputText.getDisplayValueOnlyStyleClass(), null);
+
+        String strValue = RendererUtils.getStringValue(facesContext, inputText);
+        writer.writeText(strValue, JSFAttr.VALUE_ATTR);
+
+        writer.endElement(HTML.SPAN_ELEM);
     }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextareaRenderer.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextareaRenderer.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextareaRenderer.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/renderkit/html/ext/HtmlTextareaRenderer.java Sun May 15 03:58:15 2005
@@ -16,10 +16,18 @@
 package org.apache.myfaces.renderkit.html.ext;
 
 import org.apache.myfaces.component.UserRoleUtils;
+import org.apache.myfaces.component.html.ext.HtmlInputTextarea;
 import org.apache.myfaces.renderkit.html.HtmlTextareaRendererBase;
+import org.apache.myfaces.renderkit.html.HTML;
+import org.apache.myfaces.renderkit.html.HtmlRendererUtils;
+import org.apache.myfaces.renderkit.RendererUtils;
+import org.apache.myfaces.renderkit.JSFAttr;
 
 import javax.faces.component.UIComponent;
+import javax.faces.component.UIInput;
 import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
+import java.io.IOException;
 
 
 /**
@@ -39,5 +47,67 @@
         {
             return super.isDisabled(facesContext, uiComponent);
         }
+    }
+
+    public void encodeEnd(FacesContext facesContext, UIComponent uiComponent)
+            throws IOException
+    {
+        RendererUtils.checkParamValidity(facesContext, uiComponent, UIInput.class);
+
+        if(uiComponent instanceof HtmlInputTextarea)
+        {
+            HtmlInputTextarea textarea = (HtmlInputTextarea) uiComponent;
+            if(textarea.isDisplayValueOnly())
+                encodeDisplayValueOnly(facesContext, textarea);
+            else
+                encodeNormal(facesContext, textarea);
+        }
+    }
+
+    private void encodeNormal(FacesContext facesContext, HtmlInputTextarea textarea) throws IOException
+    {
+        ResponseWriter writer = facesContext.getResponseWriter();
+        writer.startElement(HTML.TEXTAREA_ELEM, textarea);
+
+        String clientId = textarea.getClientId(facesContext);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+        HtmlRendererUtils.writeIdIfNecessary(writer, textarea, facesContext);
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, textarea, HTML.TEXTAREA_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(textarea.getStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, textarea.getStyle(), null);
+        if(textarea.getStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, textarea.getStyleClass(), null);
+
+        if (isDisabled(facesContext, textarea))
+            writer.writeAttribute(HTML.DISABLED_ATTR, Boolean.TRUE, null);
+
+        String strValue = RendererUtils.getStringValue(facesContext, textarea);
+        writer.writeText(strValue, JSFAttr.VALUE_ATTR);
+
+        writer.endElement(HTML.TEXTAREA_ELEM);
+    }
+
+    private void encodeDisplayValueOnly(FacesContext facesContext, HtmlInputTextarea textarea) throws IOException
+    {
+        ResponseWriter writer = facesContext.getResponseWriter();
+        writer.startElement(HTML.SPAN_ELEM, textarea);
+
+        String clientId = textarea.getClientId(facesContext);
+        writer.writeAttribute(HTML.NAME_ATTR, clientId, null);
+        HtmlRendererUtils.writeIdIfNecessary(writer, textarea, facesContext);
+
+        HtmlRendererUtils.renderHTMLAttributes(writer, textarea, HTML.TEXTAREA_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+
+        if(textarea.getDisplayValueOnlyStyle() != null)
+            writer.writeAttribute(HTML.STYLE_ATTR, textarea.getDisplayValueOnlyStyle(), null);
+        if(textarea.getDisplayValueOnlyStyleClass() != null)
+            writer.writeAttribute(HTML.STYLE_CLASS_ATTR, textarea.getDisplayValueOnlyStyleClass(), null);
+
+        String strValue = RendererUtils.getStringValue(facesContext, textarea);
+        writer.writeText(strValue, JSFAttr.VALUE_ATTR);
+
+        writer.endElement(HTML.SPAN_ELEM);
     }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextTag.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextTag.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextTag.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextTag.java Sun May 15 03:58:15 2005
@@ -41,11 +41,19 @@
     private String _enabledOnUserRole;
     private String _visibleOnUserRole;
 
+    private String _displayValueOnly;
+	private String _displayValueOnlyStyle;
+	private String _displayValueOnlyStyleClass;
+
     public void release() {
         super.release();
 
         _enabledOnUserRole=null;
         _visibleOnUserRole=null;
+
+        _displayValueOnly=null;
+        _displayValueOnlyStyle=null;
+        _displayValueOnlyStyleClass=null;
     }
 
     protected void setProperties(UIComponent component)
@@ -53,6 +61,10 @@
         super.setProperties(component);
         setStringProperty(component, UserRoleAware.ENABLED_ON_USER_ROLE_ATTR, _enabledOnUserRole);
         setStringProperty(component, UserRoleAware.VISIBLE_ON_USER_ROLE_ATTR, _visibleOnUserRole);
+        
+        setBooleanProperty(component, "displayValueOnly", _displayValueOnly);
+        setStringProperty(component, "displayValueOnlyStyle", _displayValueOnlyStyle);
+        setStringProperty(component, "displayValueOnlyStyleClass", _displayValueOnlyStyleClass);
     }
 
     public void setEnabledOnUserRole(String enabledOnUserRole)
@@ -65,4 +77,18 @@
         _visibleOnUserRole = visibleOnUserRole;
     }
 
+    public void setDisplayValueOnly(String displayValueOnly)
+    {
+        _displayValueOnly = displayValueOnly;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle)
+    {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass)
+    {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextareaTag.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextareaTag.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextareaTag.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlInputTextareaTag.java Sun May 15 03:58:15 2005
@@ -41,11 +41,19 @@
     private String _enabledOnUserRole;
     private String _visibleOnUserRole;
 
+    private String _displayValueOnly;
+	private String _displayValueOnlyStyle;
+	private String _displayValueOnlyStyleClass;
+
     public void release() {
         super.release();
 
         _enabledOnUserRole=null;
         _visibleOnUserRole=null;
+
+        _displayValueOnly=null;
+        _displayValueOnlyStyle=null;
+        _displayValueOnlyStyleClass=null;
     }
 
     protected void setProperties(UIComponent component)
@@ -53,6 +61,10 @@
         super.setProperties(component);
         setStringProperty(component, UserRoleAware.ENABLED_ON_USER_ROLE_ATTR, _enabledOnUserRole);
         setStringProperty(component, UserRoleAware.VISIBLE_ON_USER_ROLE_ATTR, _visibleOnUserRole);
+        
+        setBooleanProperty(component, "displayValueOnly", _displayValueOnly);
+        setStringProperty(component, "displayValueOnlyStyle", _displayValueOnlyStyle);
+        setStringProperty(component, "displayValueOnlyStyleClass", _displayValueOnlyStyleClass);
     }
 
     public void setEnabledOnUserRole(String enabledOnUserRole)
@@ -65,4 +77,18 @@
         _visibleOnUserRole = visibleOnUserRole;
     }
 
+    public void setDisplayValueOnly(String displayValueOnly)
+    {
+        _displayValueOnly = displayValueOnly;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle)
+    {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass)
+    {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectManyCheckboxTag.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectManyCheckboxTag.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectManyCheckboxTag.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectManyCheckboxTag.java Sun May 15 03:58:15 2005
@@ -42,10 +42,18 @@
     private String _enabledOnUserRole;
     private String _visibleOnUserRole;
 
+    private String _displayValueOnly;
+	private String _displayValueOnlyStyle;
+	private String _displayValueOnlyStyleClass;
+
     public void release() {
         super.release();
         _enabledOnUserRole=null;
         _visibleOnUserRole=null;
+
+        _displayValueOnly=null;
+        _displayValueOnlyStyle=null;
+        _displayValueOnlyStyleClass=null;
    }
 
     protected void setProperties(UIComponent component)
@@ -53,6 +61,10 @@
         super.setProperties(component);
         setStringProperty(component, UserRoleAware.ENABLED_ON_USER_ROLE_ATTR, _enabledOnUserRole);
         setStringProperty(component, UserRoleAware.VISIBLE_ON_USER_ROLE_ATTR, _visibleOnUserRole);
+
+        setBooleanProperty(component, "displayValueOnly", _displayValueOnly);
+        setStringProperty(component, "displayValueOnlyStyle", _displayValueOnlyStyle);
+        setStringProperty(component, "displayValueOnlyStyleClass", _displayValueOnlyStyleClass);
     }
 
     public void setEnabledOnUserRole(String enabledOnUserRole)
@@ -65,4 +77,18 @@
         _visibleOnUserRole = visibleOnUserRole;
     }
 
+    public void setDisplayValueOnly(String displayValueOnly)
+    {
+        _displayValueOnly = displayValueOnly;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle)
+    {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass)
+    {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneMenuTag.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneMenuTag.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneMenuTag.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneMenuTag.java Sun May 15 03:58:15 2005
@@ -41,10 +41,18 @@
     private String _enabledOnUserRole;
     private String _visibleOnUserRole;
 
+    private String _displayValueOnly;
+	private String _displayValueOnlyStyle;
+	private String _displayValueOnlyStyleClass;
+
     public void release() {
         super.release();
         _enabledOnUserRole=null;
         _visibleOnUserRole=null;
+
+        _displayValueOnly=null;
+        _displayValueOnlyStyle=null;
+        _displayValueOnlyStyleClass=null;
     }
 
     protected void setProperties(UIComponent component)
@@ -52,6 +60,10 @@
         super.setProperties(component);
         setStringProperty(component, UserRoleAware.ENABLED_ON_USER_ROLE_ATTR, _enabledOnUserRole);
         setStringProperty(component, UserRoleAware.VISIBLE_ON_USER_ROLE_ATTR, _visibleOnUserRole);
+
+        setBooleanProperty(component, "displayValueOnly", _displayValueOnly);
+        setStringProperty(component, "displayValueOnlyStyle", _displayValueOnlyStyle);
+        setStringProperty(component, "displayValueOnlyStyleClass", _displayValueOnlyStyleClass);
     }
 
     public void setEnabledOnUserRole(String enabledOnUserRole)
@@ -64,4 +76,18 @@
         _visibleOnUserRole = visibleOnUserRole;
     }
 
+    public void setDisplayValueOnly(String displayValueOnly)
+    {
+        _displayValueOnly = displayValueOnly;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle)
+    {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass)
+    {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneRadioTag.java
URL: http://svn.apache.org/viewcvs/myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneRadioTag.java?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneRadioTag.java (original)
+++ myfaces/trunk/src/components/org/apache/myfaces/taglib/html/ext/HtmlSelectOneRadioTag.java Sun May 15 03:58:15 2005
@@ -42,10 +42,18 @@
     private String _enabledOnUserRole;
     private String _visibleOnUserRole;
 
+    private String _displayValueOnly;
+	private String _displayValueOnlyStyle;
+	private String _displayValueOnlyStyleClass;
+
     public void release() {
         super.release();
         _enabledOnUserRole=null;
         _visibleOnUserRole=null;
+
+        _displayValueOnly=null;
+        _displayValueOnlyStyle=null;
+        _displayValueOnlyStyleClass=null;
    }
 
     protected void setProperties(UIComponent component)
@@ -53,6 +61,10 @@
         super.setProperties(component);
         setStringProperty(component, UserRoleAware.ENABLED_ON_USER_ROLE_ATTR, _enabledOnUserRole);
         setStringProperty(component, UserRoleAware.VISIBLE_ON_USER_ROLE_ATTR, _visibleOnUserRole);
+
+        setBooleanProperty(component, "displayValueOnly", _displayValueOnly);
+        setStringProperty(component, "displayValueOnlyStyle", _displayValueOnlyStyle);
+        setStringProperty(component, "displayValueOnlyStyleClass", _displayValueOnlyStyleClass);
     }
 
     public void setEnabledOnUserRole(String enabledOnUserRole)
@@ -65,4 +77,18 @@
         _visibleOnUserRole = visibleOnUserRole;
     }
 
+    public void setDisplayValueOnly(String displayValueOnly)
+    {
+        _displayValueOnly = displayValueOnly;
+    }
+
+    public void setDisplayValueOnlyStyle(String displayValueOnlyStyle)
+    {
+        _displayValueOnlyStyle = displayValueOnlyStyle;
+    }
+
+    public void setDisplayValueOnlyStyleClass(String displayValueOnlyStyleClass)
+    {
+        _displayValueOnlyStyleClass = displayValueOnlyStyleClass;
+    }
 }

Modified: myfaces/trunk/tlds/myfaces_ext.tld
URL: http://svn.apache.org/viewcvs/myfaces/trunk/tlds/myfaces_ext.tld?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
--- myfaces/trunk/tlds/myfaces_ext.tld (original)
+++ myfaces/trunk/tlds/myfaces_ext.tld Sun May 15 03:58:15 2005
@@ -226,6 +226,7 @@
         &standard_input_text_attributes;
         &user_role_attributes;
         &ext_forceId_attribute;
+        &display_value_only_attributes;
     </tag>
 
     <!-- inputTextarea -->
@@ -239,6 +240,7 @@
         &standard_input_textarea_attributes;
         &user_role_attributes;
         &ext_forceId_attribute;
+        &display_value_only_attributes;
     </tag>
 
     <!-- message -->
@@ -397,6 +399,7 @@
         &standard_select_one_menu_attributes;
         &user_role_attributes;
         &ext_forceId_attribute;
+        &display_value_only_attributes;
     </tag>
 
     <!-- selectOneRadio -->
@@ -412,6 +415,7 @@
         &standard_select_one_radio_attributes;
         &user_role_attributes;
         &ext_forceId_attribute;
+        &display_value_only_attributes;
     </tag>
 
     <!-- selectManyCheckbox -->
@@ -427,6 +431,7 @@
         &standard_select_many_checkbox_attributes;
         &user_role_attributes;
         &ext_forceId_attribute;
+        &display_value_only_attributes;
     </tag>
 
 

Modified: myfaces/trunk/webapps/examples/sample2.jsp
URL: http://svn.apache.org/viewcvs/myfaces/trunk/webapps/examples/sample2.jsp?rev=170212&r1=170211&r2=170212&view=diff
==============================================================================
Binary files - no diff available.