sexta-feira, 12 de fevereiro de 2010

Tutorial PickList RichFaces

Olá, pessoal! Como sofri um pouco para conseguir utilizar o PickList do RichFaces, resolvi fazer um simples tutorial de sua utilização. Links: http://docs.jboss.org/richfaces/3.3.2.GA/en/devguide/html/rich_pickList.html http://livedemo.exadel.com/richfaces-demo/richfaces/pickList.jsf?c=pickList

JSP

<rich:pickList value="#{bean.listaDestino}" 
 copyAllControlLabel=" " 
 copyControlLabel=" "
 removeControlLabel=" "
 removeAllControlLabel=" "> 
 <f:selectItems value="#{bean.ListaOrigem}"/>
</rich:pickList>

Os atributos …ControlLabel possibilitam você alterar o rótulo de cada botão do componente.

BEAN

public class Bean {
  private List<MeuObjeto> listaDestino;
  private List<SelectItem> listaOrigem;
  
  public List<MeuObjeto> getListaDestino() {
    if (listaDestino == null) {
      listaDestino = new ArrayList<MeuObjeto>();
    }
    return listaDestino;
  }
  public List<SelectItem> getListaOrigem() {
    if (listaOrigem == null) {
      listaOrigem = new ArrayList<SelectItem>();
      
      /* Criei esse objeto apenas a título de exemplo. 
       * Num caso real, você poderia buscar a lista do banco.
       */
      MeuObjeto o = new MeuObjeto();
      listaOrigem.add(new SelectItem(o, o.getNome()));
    }  
    return listaOrigem;
  }
  public void setListaDestino(List<MeuObjeto> listaDestino) {
    this.listaDestino = listaDestino;
  }
  public void setListaOrigem(List<SelectItem> listaOrigem) {
    this.listaOrigem = listaOrigem;
  }
}

Pronto!
Dessa forma sua lista já irá funcionar. Ao passar os elementos de uma lista para outra, a listaDestino será atualizada.

Abraços!!!

4 comentários: