>  com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)

You might have better luck on the Sun JSF RI mailing lists since
you're not using MyFaces.



On 9/28/05, Caroline Jen <[EMAIL PROTECTED]> wrote:
> 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)
>
> ---------------------------------------------------
>
>
>
> --- Paul Klaer <[EMAIL PROTECTED]> wrote:
>
> > This bug has no Exception. The value is not
> > correctly displayed as checked
> > because of a comparison of the variable which is not
> > converted into String
> > so the result of the equals method returns false
> > each time.
> >
> > On Wed, 28 Sep 2005 15:55:56 +0200, Caroline Jen
> > <[EMAIL PROTECTED]>
> > wrote:
> >
> > > Hi Stefano,
> > >
> > >      Is this the error message you are getting
> > when
> > > use valueChangeListener in the <h:selectOneRadio>
> > tag:
> > >
> > > "java.lang.IllegalArgumentException: Conversion
> > Error
> > > setting value ''{0}'' for ''{1}''."
> > >
> > >      Please help me to make sure that I ran into
> > the
> > > same problem.  Here is my selectOneRadio code:
> > >
> > > <h:selectOneRadio
> > >
> >
> value="#{dataManagementBean.dataTransferTypeItems[0]}"
> > > layout="pageDirection" onchange="submit()"
> > > immediate="true"
> > >
> >
> valueChangeListener="#{dataManagementBean.showRecordList}">
> > > </h:selectOneRadio>
> > >
> > > --Caroline
> > >
> > >
> > > --- "stefanom (sent by Nabble.com)"
> > <[EMAIL PROTECTED]>
> > > wrote:
> > >
> > >>
> > >> With myfaces version 1.09 I can use a Boolean
> > method
> > >> in h:selectOneRadio value tag and the component
> > >> converts the Boolean value in String
> > automatically.
> > >>
> > >> In version 1.1 this conversion doesn't work and I
> > >> need to use another method for the conversion.
> > >>
> > >>
> > >> Thank you
> > >>
> > >> Stefano
> > >>
> > >>
> > >> --
> > >> Sent from the MyFaces - Users forum at
> > Nabble.com:
> > >>
> > >
> >
> http://www.nabble.com/selectOneRadio-in-myfaces-1.1-t354851.html#a982138
> > >>
> > >
> > >
> > >
> > >
> > > __________________________________
> > > Yahoo! Mail - PC Magazine Editors' Choice 2005
> > > http://mail.yahoo.com
> >
> >
> >
>
>
>
>
> __________________________________
> Yahoo! Mail - PC Magazine Editors' Choice 2005
> http://mail.yahoo.com
>

Reply via email to