Hi Andy, thanks for your reply.  I am binding to a
String in

<h:selectOneRadio
value="#{dataManagementBean.dataTransferTypeItems[0]}"
........>

The dataTransferTypeItems[0] is a String.

Actually, I have two radio buttons.  One stands for
"import" and the other stands for "export".  I am
trying to set a default radio button to "import" 

What should I do to fix the problem?  Thanks for
guidance in advance.

--Caroline

--- [EMAIL PROTECTED] wrote:

> I don't exactly know if it's this problem, but what
> Java types to you have in your SelectItems value.
> Perhaps the value binding of the selectOneRadio is
> binded to the wrong Java Type... You know what I
> mean...
> 
> For example: If your SelectItem consists of (int,
> String)
> then the value binding of the selectOneRadio
> Component must be bind to an int...
> 
> I hope I don't tell you nonsense, because I'm also a
> beginner in JSF but I got the same error stack some
> days ago and this was the problem. 
> 
> regards,
> Andy
> 
> -----Ursprüngliche Nachricht-----
> Von: Caroline Jen [mailto:[EMAIL PROTECTED]
> Gesendet: Mittwoch, 28. September 2005 18:11
> An: MyFaces Discussion
> Betreff: Re: selectOneRadio Problem - Conversion
> Error setting value
> ''{0}'' for ''{1}''. 
> 
> 
> Please help me to identify the problem that I ran
> into.  Meanwhile, I am unable to find the JSF
> version
> in the IDE I use.  I am uncertain if my problem is
> related to the version 1.1 of JSF or the problem is
> with my code.
> 
> I have put a ValueChangeListener for my radio
> button.
> I have two radio buttons. And I have two list boxes.
> List box A will be displayed if the first radio
> button
> is clicked by users. List box B will be displayed if
> the second radio button is clicked by users. 
> 
> To have something displayed in the list box when the
> web page is "first" rendered, I would like to show a
> default radio button (the first radio button) and
> display the list box A.
> 
> But, my code has a "runtime" error:
> 
> quote:
>
------------------------------------------------------
> 
> java.lang.IllegalArgumentException: Conversion Error
> setting value ''{0}'' for ''{1}''. 
> 
>
------------------------------------------------------
> 
> My code is show below. In my jsp page, I try to
> construct a set of radio buttons and a list box:
> 
> code:
>
-----------------------------------------------------
> 
> <h:selectOneRadio
>
value="#{dataManagementBean.dataTransferTypeItems[0]}"
> layout="pageDirection" onchange="submit()"
> immediate="true"
>
valueChangeListener="#{dataManagementBean.showRecordList}">
> 
>       <f:selectItems
>
value="#{dataManagementBean.dataTransferTypeItems}"/>
> 
> </h:selectOneRadio> 
> 
> <h:selectOneListbox
> value="#{dataManagementBean.record}" required="true"
> immediate="true">
> 
>       <f:selectItems
> value="#{dataManagementBean.recordItems}"/>
> 
> </h:selectOneListbox>
> 
> ----------------------------------------------------
> 
> 
> In my backing bean, I have:
> 
> code:
>
-----------------------------------------------------
> 
> private SelectItem[] dataTransferTypeItems;
> private Map records;
> private SelectItem[] recordItems;
> 
>       dataTransferTypeItems = new SelectItem[]
>         {
>             new SelectItem("import", "Records
> available for import"),
>             new SelectItem("export", "Records
> available for export")
>         };
> 
>       public SelectItem[] showRecordList(
> ValueChangeEvent
> event )
>       {
>               FacesContext context =
> FacesContext.getCurrentInstance();
> 
>               if ( ( ( String )event.getNewValue() ).equals(
> "import") )
>               {
>                       recordItems = ( SelectItem[] ) records.get(
> "import" );
>               }
>               else
>               {
>                       recordItems = ( SelectItem[] ) records.get(
> "export" );
>               }
>               context.renderResponse();
>               return recordItems;
>       } 
> 
> ----------------------------------------------------
> 
> 
> This is how I contruct my "records", which is a Map:
> 
> code:
> ----------------------------------------------------
> 
>       records = new HashMap();                records.put( "import",
>            new SelectItem[]
>            {
>                   new SelectItem( "import1", "HAFMDS -- FAC_SAR"
> ), new SelectItem( "import2", "LOCAL -- AFSC_SUB" ),
>       
>                   new SelectItem( "import3", "LOGMOD -- Chalk"
> ),
> new SelectItem( "import4", "MDS -- Authorizations"
> ),    
>                   new SelectItem( "import5", "MDS --
> Wartime_Inplace" )
>             }
>       );
> 
>       records.put( "exports", 
>            new SelectItem[]
>            {
>                   new SelectItem( "export1", "LOGFOR -- UTA" ),
> new SelectItem( "export2", "MISSION -- DESIGN_NUM"
> ), 
>                   new SelectItem( "export3", "AUTH -- Upgrade"
> ),
> new SelectItem( "export4", "MISCAP -- Basic" ), 
>                     new SelectItem( "export5",
> "DEPID
> -- HQ_FAM_PHONE" )
>               }
>       );
> 
> ---------------------------------------------------
> 
> 
> The runtime error message is:
> 
> quote:
> ----------------------------------------------------
> 
> java.lang.IllegalArgumentException: Conversion Error
> setting value ''{0}'' for ''{1}''. 
>
com.sun.faces.util.Util.getSelectItems(Util.java:628)
>
com.sun.faces.renderkit.html_basic.MenuRenderer.getOptionNumber(MenuRenderer.java:488)
>
com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:465)
>
com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:430)
>
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:720)
>
javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:623)
>
javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:546)
>
com.sun.faces.taglib.html_basic.SelectOneListboxTag.doEndTag(SelectOneListboxTag.java:521)
>
org.apache.jsp.pages.screen1_jsp._jspx_meth_h_selectOneListbox_0(screen1_jsp.java:383)
>
org.apache.jsp.pages.screen1_jsp._jspx_meth_h_form_0(screen1_jsp.java:212)
>
org.apache.jsp.pages.screen1_jsp._jspx_meth_f_view_0(screen1_jsp.java:164)
>
org.apache.jsp.pages.screen1_jsp._jspService(screen1_jsp.java:129)
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
>
com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
>
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
>
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
>
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
>
javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
> 
> ---------------------------------------------------
> 
> 
> 
=== message truncated ===



                
__________________________________ 
Yahoo! Mail - PC Magazine Editors' Choice 2005 
http://mail.yahoo.com

Reply via email to