Author: nbelaevski
Date: 2009-03-30 13:33:23 -0400 (Mon, 30 Mar 2009)
New Revision: 13304
Modified:
trunk/ui/combobox/src/main/java/org/richfaces/renderkit/ComboBoxBaseRenderer.java
Log:
https://jira.jboss.org/jira/browse/RF-6596
Modified:
trunk/ui/combobox/src/main/java/org/richfaces/renderkit/ComboBoxBaseRenderer.java
===================================================================
---
trunk/ui/combobox/src/main/java/org/richfaces/renderkit/ComboBoxBaseRenderer.java 2009-03-30
17:10:44 UTC (rev 13303)
+++
trunk/ui/combobox/src/main/java/org/richfaces/renderkit/ComboBoxBaseRenderer.java 2009-03-30
17:33:23 UTC (rev 13304)
@@ -94,7 +94,9 @@
values.addAll(encodeSuggestionValues(context, comboBox));
List<SelectItem> selectItems = SelectUtils.getSelectItems(context, component);
for (SelectItem selectItem : selectItems) {
- values.add(encodeSuggestion(context, comboBox, selectItem.getValue(),
RICH_COMBOBOX_ITEM_CLASSES));
+ String convertedValue = getConvertedStringValue(context, component,
selectItem.getValue());
+ encodeSuggestion(context, comboBox, convertedValue, RICH_COMBOBOX_ITEM_CLASSES);
+ values.add(convertedValue);
}
}
return values;
@@ -108,12 +110,16 @@
if (suggestionValues instanceof Collection) {
Collection collection = (Collection) suggestionValues;
for (Object suggestionValue : collection) {
- values.add(encodeSuggestion(context, combobox, suggestionValue,
RICH_COMBOBOX_ITEM_CLASSES));
+ String convertedValue = getConvertedStringValue(context, combobox,
suggestionValue);
+ encodeSuggestion(context, combobox, convertedValue, RICH_COMBOBOX_ITEM_CLASSES);
+ values.add(convertedValue);
}
} else if (suggestionValues.getClass().isArray()) {
Object[] suggestions = (Object[]) suggestionValues;
for (Object suggestionValue: suggestions) {
- values.add(encodeSuggestion(context, combobox, suggestionValue,
RICH_COMBOBOX_ITEM_CLASSES));
+ String convertedValue = getConvertedStringValue(context, combobox,
suggestionValue);
+ encodeSuggestion(context, combobox, convertedValue, RICH_COMBOBOX_ITEM_CLASSES);
+ values.add(convertedValue);
}
} else {
throw new IllegalArgumentException("suggestionValues should be Collection or
Array");
@@ -131,17 +137,14 @@
return InputUtils.getConvertedStringValue(context, component, value);
}
- public String encodeSuggestion(FacesContext context, UIComponent component, Object
value, String classes) throws IOException {
+ protected void encodeSuggestion(FacesContext context, UIComponent component, String
value, String classes) throws IOException {
ResponseWriter writer = context.getResponseWriter();
- String encodedValue = null;
if(writer != null) {
- encodedValue = getConvertedStringValue(context, component, value);
writer.startElement(HTML.SPAN_ELEM, component);
writer.writeAttribute(HTML.class_ATTRIBUTE, classes, null);
writer.writeText(value, null);
writer.endElement(HTML.SPAN_ELEM);
}
- return encodedValue;
}
protected boolean isAcceptableComponent(UIComponent component) {