I am getting a converter error when trying to pass an array of SelectItems to
a selectManyListbox.  Isn't this component designed to handle an array?  Why
would I need a converter?  Note, these are pre-selected items.  That's why
the value of the selectManyListbox is the same as <f:selectItems/>

JSF:
<h:selectManyListbox immediate="true" id="userLocations" 
    value="#{editProfileAction.updateUserLocations}"
    size="11" styleClass="selectBox"
    valueChangeListener="#{editProfileAction.updateUserLocations}">
    <f:selectItems value="#{editProfileAction.userLocations}"/>
</h:selectManyListbox>


Java:
private SelectItem[] userLocations;
...
public SelectItem[] getUserLocations() {
    return userLocations;
}

public SelectItem[] getUserLocations() {
    return userLocations;
}
...
Result:
java.lang.IllegalArgumentException: Value is no String and component
alertsSubView:alertsForm:userLocations does not have a Converter
        at
org.apache.myfaces.renderkit.RendererUtils.getConvertedStringValue(RendererUtils.java:544)
        at
org.apache.myfaces.renderkit.RendererUtils.internalSubmittedOrSelectedValuesAsSet(RendererUtils.java:586)
        at
org.apache.myfaces.renderkit.RendererUtils.getSelectedValuesAsSet(RendererUtils.java:527)
        at
org.apache.myfaces.renderkit.html.HtmlRendererUtils.getSubmittedOrSelectedValuesAsSet(HtmlRendererUtils.java:307)
        at
org.apache.myfaces.renderkit.html.HtmlRendererUtils.internalRenderSelect(HtmlRendererUtils.java:290)
        at
org.apache.myfaces.renderkit.html.HtmlRendererUtils.renderListbox(HtmlRendererUtils.java:241)
        at
org.apache.myfaces.renderkit.html.HtmlListboxRendererBase.encodeEnd(HtmlListboxRendererBase.java:56)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:450)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:203)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:85)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:450)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:203)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:85)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:450)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:203)
        at
org.apache.myfaces.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:85)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:450)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.java:427)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:448)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.java:427)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChild(RendererUtils.java:448)
        at
org.apache.myfaces.renderkit.RendererUtils.renderChildren(RendererUtils.java:427)
        at
org.apache.myfaces.renderkit.html.HtmlGroupRendererBase.encodeEnd(HtmlGroupRendererBase.java:62)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
        at
org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChild(RendererUtils.java:442)
        at
org.apache.myfaces.custom.tabbedpane.HtmlTabbedPaneRenderer.writeTabsContents(HtmlTabbedPaneRenderer.java:530)
        at
org.apache.myfaces.custom.tabbedpane.HtmlTabbedPaneRenderer.encodeEnd(HtmlTabbedPaneRenderer.java:222)
        at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)


-- 
View this message in context: 
http://www.nabble.com/Converter-error-tf2564573.html#a7148345
Sent from the MyFaces - Users mailing list archive at Nabble.com.

Reply via email to