I understand what you are talking about.  I created
select one and select many long time ago without any
problem.

I think the conclusion is that it is NOT POSSIBLE to
supply a UISelectMany to render a list box.  Is it
correct?

--- Guillermo Meyer <[EMAIL PROTECTED]>
wrote:

> Creating a select one or a select many by using
> selectItems is the same.
> selectItems behavior is the same
> You are trying to set selectItems value to an
> invalid type property
> 
> <h:selectManyListbox
> binding="#{fileManagementBean.dataFile}" size="7" >
>      <f:selectItems
>  value="#{fileManagementBean.dataFileItems}"/>
> </h:selectManyListbox>
> 
> value points to fileManagementBean.dataFileItems
> that returns UISelectMany
> 
>       public UISelectMany getDataFileItems() {
>               return dataFileItems;
>       }
> 
> check this documentation:
>
http://www.horstmann.com/corejsf/jsf-tags.html#Table4_22a
> 
> "Value binding expression that points to a
> SelectItem, an array or
> Collection of SelectItem objects, or a Map mapping
> labels to values."
> 
> 
> Saludos.
> Guillermo.
> 
> 
> 
> -----Original Message-----
> From: Caroline Jen [mailto:[EMAIL PROTECTED] 
> Sent: MiƩrcoles, 12 de Octubre de 2005 12:35 p.m.
> To: MyFaces Discussion; [EMAIL PROTECTED]
> Subject: RE: I Created a UISelectMany, But, It Was
> Not Acceptable to the
> <f:selectItems>
> 
> I knew how to create a list box using a List of
> SelectItem.  I did it successfully long time ago.
> 
> What I am struggling now is to have a UISelectMany
> to
> be rendered as a list box in the browser.
> 
> --- Guillermo Meyer <[EMAIL PROTECTED]>
> wrote:
> 
> > You ask this befote. The problem seems to be that
> > dataFileItems in the
> > backing bean should return a Map or an array of
> > SelectItem[].
> > 
> > Change:
> > public UISelectMany getDataFileItems() ....
> > 
> > To:
> > public SelectItem[] getDataFileItems() ....
> > 
> > 
> > And use as you do like this:
> > <h:selectManyListbox
> > binding="#{fileManagementBean.dataFile}" size="7"
> >
> >     <f:selectItems
> > value="#{fileManagementBean.dataFileItems}"/>
> > </h:selectManyListbox>
> > 
> > As you see, #{fileManagementBean.dataFileItems}
> > binding expression points to
> > dataFileItems that in your case returns
> > UISelectMany. It should return
> > SelectItem[] (or a Map)
> > 
> > 
> > Regards.
> > Guillermo.
> > 
> > -----Original Message-----
> > From: Caroline Jen [mailto:[EMAIL PROTECTED] 
> > Sent: MiƩrcoles, 12 de Octubre de 2005 11:05 a.m.
> > To: users@myfaces.apache.org
> > Subject: I Created a UISelectMany, But, It Was Not
> > Acceptable to the
> > <f:selectItems>
> > 
> > Please help me.  I have been struggling for days. 
> > If
> > anybody has the experience.
> > 
> > I got a runtime error:
> > "java.lang.IllegalArgumentException: Conversion
> > Error
> > setting value ''{0}'' for ''{1}''. 
> > 
> >
>
com.sun.faces.util.Util.getSelectItems(Util.java:628)"
> > Usually when we encounter this error using
> > selectItems, we have to ensure that the method the
> > SelectItems being returned is NOT NULL.  I have a
> > getter for what to be rendered in my backing bean.
> 
> > Therefore, it seems that what I created for
> > rendering
> > has some problems.
> > 
> > This is my backing bean:
> > 
> > [code]
> > public class FileManagementBean 
> > {
> >     private UISelectMany dataFileItems;
> >     protected List dataFile;
> >     
> >     public FileManagementBean() 
> >     {
> >             dataFileItems = new UISelectMany();
> >             UISelectItem item = new UISelectItem();
> >  
> >             SelectItem file = new SelectItem( "file1", "Data
> > File No. 1" );
> >             item.setValue( file );
> >             dataFileItems.getChildren().add( item );
> >             file = new SelectItem( "file2", "Data File No.
> 2"
> > );
> >             item.setValue( file );
> >             dataFileItems.getChildren().add( item );
> > ......
> > ......
> >     }
> > 
> >     public UISelectMany getDataFileItems() {
> >             return dataFileItems;
> >     }
> >     
> >     public Object[] getDataFile() 
> >     {
> >             return dataFile.toArray();
> >     }
> >     
> >     public void setDataFile( Object[] newDataFile ) 
> >     {
> >         int len = 0;
> >             if ( null == newDataFile ||
> >                ( len = newDataFile.length) == 0) 
> >             {
> >                 return;
> >             }
> >             dataFile.clear();
> >             dataFile = new ArrayList( len );
> >             for ( int i = 0; i < len; i++ ) 
> >             {
> >                 dataFile.add( newDataFile[i] );
> >                                            }        
> >     }
> > }
> > [/code]
> > 
> > and I tried to create a list box:
> > 
> > [code]
> > <h:selectManyListbox
> > binding="#{fileManagementBean.dataFile}" size="7"
> >
> >     <f:selectItems
> > value="#{fileManagementBean.dataFileItems}"/>
> > </h:selectManyListbox>
> > [/code]
> > 
> > 
> > 
> > 
> >     
> >             
> > __________________________________ 
> > Yahoo! Mail - PC Magazine Editors' Choice 2005 
> > http://mail.yahoo.com
> > 
> > NOTA DE CONFIDENCIALIDAD
> > Este mensaje (y sus anexos) es confidencial, esta
> > dirigido exclusivamente a las personas
> direccionadas
> > en el mail y puede contener informacion (i)de
> > propiedad exclusiva de Interbanking S.A. o (ii)
> > amparada por el secreto profesional. Cualquier
> > opinion en el contenido, es exclusiva de su autor
> y
> > no representa necesariamente la opinion de
> > Interbanking S.A. El acceso no autorizado, uso,
> > reproduccion, o divulgacion esta prohibido.
> > Interbanking S.A no asumira responsabilidad ni
> > obligacion legal alguna por cualquier informacion
> > incorrecta o alterada contenida en este mensaje.
> Si
> > usted ha recibido este mensaje por error, le
> rogamos
> > tenga la amabilidad de destruirlo inmediatamente
> 
=== message truncated ===



                
__________________________________ 
Yahoo! Music Unlimited 
Access over 1 million songs. Try it free.
http://music.yahoo.com/unlimited/

Reply via email to