It has been a while, but I believe what was happening is that I was using bundle strings in my label & value and during the restore view & update model the bundle wasn't being processed or something and I ended up with null. I converted this to use a List<SelectItem> on the bean instead of using select item tags and it works just fine now.
On 1/24/07, Michael Heinen <[EMAIL PROTECTED]> wrote:
I just found this thread and it seems to deal with the same problem. http://www.nabble.com/Re%3A-java.lang.IllegalArgumentException%3A-Value-is-no-String-p7609739.html Andrew, did you find a solution? Michael ________________________________ From: Michael Heinen [mailto:[EMAIL PROTECTED] Sent: Mittwoch, 24. Januar 2007 11:07 To: MyFaces Discussion Subject: IllegalArgumentException: Value is no String (Bug in HtmlRendererUtils?) IllegalArgumentException: Value is no String (Bug in HtmlRendererUtils?) I get the following exception if I submit my form via a normal h:commandLink and no option is set for an extended HtmlSelectOneRadio component. java.lang.IllegalArgumentException: Value is no String (class=org.apache.myfaces.shared_impl.renderkit.RendererUtils$1, [EMAIL PROTECTED]) and component docform:moveTowith path: {Component-Path : [Class: org.ajax4jsf.framework.ajax.AjaxViewRoot,ViewId: /workbench.jsp][Class: org.apache.myfaces.custom.div.Div,Id: content][Class: org.apache.myfaces.custom.div.Div,Id: workbench][Class: javax.faces.component.html.HtmlForm,Id: docform][Class: org.apache.myfaces.custom.div.Div,Id: metaDataBox][Class: org.ajax4jsf.ajax.html.HtmlAjaxOutputPanel,Id: a4jDocProfile][Class: org.apache.myfaces.custom.div.Div,Id: metaDataDiv][Class: org.apache.myfaces.custom.div.Div,Id: mdob][Class: org.apache.myfaces.custom.div.Div,Id: mdbctinp][Class: com.recommind.li.client.web.faces.selectOne.SelectOneRadio,Id: moveTo]} does not have a Converter at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.getConvertedStringValue(RendererUtils.java:536) at com.recommind.li.client.web.faces.selectOne.RadioRenderer.encodeEnd(RadioRenderer.java:104) at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:536) at org.ajax4jsf.framework.renderer.RendererBase.renderChild(RendererBase.java:249) at org.ajax4jsf.framework.renderer.RendererBase.renderChildren(RendererBase.java:225) at org.ajax4jsf.framework.renderer.RendererBase.renderChild(RendererBase.java:247) at org.ajax4jsf.framework.renderer.RendererBase.renderChildren(RendererBase.java:225) at org.ajax4jsf.framework.renderer.RendererBase.renderChild(RendererBase.java:247) at org.ajax4jsf.framework.renderer.RendererBase.renderChildren(RendererBase.java:225) at org.ajax4jsf.framework.renderer.RendererBase.renderChild(RendererBase.java:247) at org.ajax4jsf.framework.renderer.RendererBase.renderChildren(RendererBase.java:225) at org.ajax4jsf.renderers.ajax.AjaxOutputPanelRenderer.encodeChildren(AjaxOutputPanelRenderer.java:74) I debugged my app and discovered following: - submittedValue is set to "[EMAIL PROTECTED]" - This is caused by org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.decodeUISelectOne(FacesContext facesContext,UIComponent component). It containt the follwing code: if (paramMap.containsKey(clientId)) { //request parameter found, set submitted value ((EditableValueHolder) component).setSubmittedValue(paramMap.get(clientId)); } else { //see reason for this action at decodeUISelectMany ((EditableValueHolder) component).setSubmittedValue( RendererUtils.NOTHING ); } Environment: myfaces 1.1.4 tomahawk 1.1.4 snapshot a4j 1.0.6rc1 tiles jre 1.5.0_10 If I submit my form via Ajax links and no option is set, then i works well. Any ideas what's going wrong here ? Michael