lunes, 11 de octubre de 2010

Ejemplo de ice:selectOneMenu iceFaces

Ejemplo de uso del componente SelectOneMenu de IceFaces.
  • getMonthNames() deberá ser llamado al iniciar el Bean para cargar los nombres de los meses en el menú
  • selectOneMonth mostrará por la consola del servidor el número del mes seleccionado cada vez que se cambia, ya que el método lo tenemos asociado al valueChangeListener en el jsp
  • Es necesario tener los setters y getters para que todos los bindings  funcionen correctamente


  1. <ice:selectOneMenu binding="#{Ejemplo.comboFilterByMonth}" id="comboFilterByMonth" partialSubmit="true" value="#{Ejemplo.comboFilterByMonthBean.selectedObject}" valueChangeListener="#{Ejemplo.selectOneMonth}">
  2.         <f:selectItems id="comboFilterByMonthSelectItems" value="#{Ejemplo.comboFilterByMonthDefaultItems}"/>
  3. </ice:selectOneMenu>


  1. private HtmlSelectOneMenu comboFilterByMonth = new HtmlSelectOneMenu();
  2. private DefaultSelectedData comboFilterByMonthBean = new DefaultSelectedData();
  3. private DefaultSelectionItems comboFilterByMonthDefaultItems = new DefaultSelectionItems();
  4. public void getMonthNames()
  5. {
  6.         comboFilterByMonthDefaultItems.setItems(new String[]
  7.                 {
  8.                 });
  9.         comboFilterByMonthDefaultItems.add(new Option(-1, "-"));
  10.         comboFilterByMonthDefaultItems.add(new Option(1, "Enero"));
  11.         comboFilterByMonthDefaultItems.add(new Option(2, "Febrero"));
  12.         comboFilterByMonthDefaultItems.add(new Option(3, "Marzo"));
  13.         comboFilterByMonthDefaultItems.add(new Option(4, "Abril"));
  14.         comboFilterByMonthDefaultItems.add(new Option(5, "Mayo"));
  15.         comboFilterByMonthDefaultItems.add(new Option(6, "Junio"));
  16.         comboFilterByMonthDefaultItems.add(new Option(7, "Julio"));
  17.         comboFilterByMonthDefaultItems.add(new Option(8, "Agosto"));
  18.         comboFilterByMonthDefaultItems.add(new Option(9, "Septiembre"));
  19.         comboFilterByMonthDefaultItems.add(new Option(10, "Octubre"));
  20.         comboFilterByMonthDefaultItems.add(new Option(11, "Noviembre"));
  21.         comboFilterByMonthDefaultItems.add(new Option(12, "Diciembre"));      
  22. }
  23. public String selectOneMonth(ValueChangeEvent event)
  24. {
  25.         if ((!comboFilterByMonth.getValue().toString().equals("-1"))
  26.         {
  27.             int monthSelect = Integer.parseInt(comboFilterByMonth.getValue().
  28.                     toString());
  29.             System.out.println("El mes seleccionado corresponde al número de mes: " + monthSelect);
  30.         }
  31.         return null;
  32. }
  33. //Getters y setters
  34.  public HtmlSelectOneMenu getComboFilterByMonth()
  35.  {
  36.         return comboFilterByMonth;
  37.  }
  38.  public void setComboFilterByMonth(HtmlSelectOneMenu comboFilterByMonth)
  39.  {
  40.         this.comboFilterByMonth = comboFilterByMonth;
  41.  }
  42.  public DefaultSelectedData getComboFilterByMonthBean()
  43.  {
  44.         return comboFilterByMonthBean;
  45.  }
  46.  public void setComboFilterByMonthBean(DefaultSelectedData comboFilterByMonthBean)
  47.  {
  48.         this.comboFilterByMonthBean = comboFilterByMonthBean;
  49.  }
  50.  public DefaultSelectionItems getComboFilterByMonthDefaultItems()
  51.  {
  52.         return comboFilterByMonthDefaultItems;
  53.  }
  54.  public void setComboFilterByMonthDefaultItems(DefaultSelectionItems comboFilterByMonthDefaultItems)
  55.  {
  56.         this.comboFilterByMonthDefaultItems = comboFilterByMonthDefaultItems;
  57.  }

1 comentario:

Anónimo dijo...

tengo una duda con respecto a la clase Option que estas utilizando, ya que copio tu código y el netbeans no me la reconoce, y no se que importar.

ojala respondas.

Saludos