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/