Olá amigos,
Acabo de me cadastrar nesse portal que ultimamente vem me ajudando muito. Todas as dúvidas que surgiram durante os ultimos tempos foram encontradas aqui, exceto a dúvida que irei postar agora.
Estou usando o JSF com o RICHFACES 3.2 e optei por utilizar o combobox. Eu tinha um selectOneMenu que está funcionando perfeitamente então o que fiz foi incluir na mesma pagina o combobox usando a mesma lista de selectItem para ambos.
O problema é que o combobox não mostra o valor que eu “setei” no setLabel. Ele me mostra somente o valor setado no setValue. Lembrando que essa mesma lista funciona perfeitamente no selectOneMenu.
Acredito que deve ser uma falta de atenção minha, mas já procurei por toda parte e não consegui encontrar.
Obrigado pela atenção de todos.
JSP:
<r:comboBox id=“pais”
selectFirstOnUpdate=“false”
defaultLabel="#{bundle.textEscolhaOpcao}">
<f:selectItems value="#{geController.gePaisList}" />
</r:comboBox>
CONTROLLER:
public String selectItemsGePais() {
try {
gePaisDAO gePaisDAO;
gePaisDAO = new gePaisDAO();
this.setGePaisList(gePaisDAO.selectItems());
return "selectItemsGePaisSucess";
} catch (Exception ex) {
ex.printStackTrace();
return "selectItemsGePaisError";
}
}
DAO:
public List selectItems(){
try{
/* Variaveis necessárias */
List lGePais = this.searchAll();
ListIterator iGePais = lGePais.listIterator();
List ret = new ArrayList();
/* Abri o meu LIST e instanciei o RET com os valores String.*/
while(iGePais.hasNext()){
gePais gePaisItem = (gePais)iGePais.next();
SelectItem si = new SelectItem();
si.setValue(gePaisItem.getIdPais());
si.setLabel(gePaisItem.getNome());
ret.add(si);
}
return ret;
}catch (Exception ex){
ex.printStackTrace();
return null;
}
}
Pagina Rodando:
Eu gostaria de o label fosse mostradao e não o ID.

