ola pessoal
eu tenho metodos que retornam uma List, e tenho pra praticamente todas elas, os mesmo metodos para cria-las como List do tipo SelectIem, como no exemplo a baixo
public List getListaDepartamento(){
List resultado = new ArrayList();
...//removi essa parte, porem, ele acessa o DB e pega os departamento
return resultado;
}
....
public List getListaDepartamentoTeste(){
return this.getConverteListParaListaSelectItem(this.funcionario.getListaDepartamento());
}
....
public List getConvertListParaListaSelectItem(List listaOriginal){
List listaSelectItem = new ArrayList();
for (int i = 0; i < listaOriginal.size(); i++){
listaSelectItem.add(new SelectItem(listaOriginal.get(i)));
}
return listaSelectItem;
}
bem, como voces podem ver o “getListaDepartamentoTeste” nada faz alem de converter a List do tipo String para SelectItem,
o que quero saber é, existe um meio de fazer isso automaticamente e/ou que use menos memoria,pois tenho que ficar criando praticamente 2 variaveis toda vez que tenho que fazer isso, e como uso muito disso no sistema, acaba ajudando
A dica é você inserir o Myfaces Tomahawk no teu projeto e utilizar o componente t:selectItems, como ele não há a necessidade de ficar criando listas de SelectItem’s no teu managed bean, é bem simples!
[quote=rponte]A dica é você inserir o Myfaces Tomahawk no teu projeto e utilizar o componente t:selectItems, como ele não há a necessidade de ficar criando listas de SelectItem’s no teu managed bean, é bem simples!
Não, não há… com eles você ainda teria que ficar criando listas de SelectItem’s no teu managed bean, não que seja algo errado, mas é não comodo!
O componente do Tomahawk é mais um componente utilitário, o que deixa as coisas bem mais simples e práticas!