RESOLVIDO: Problemas com <f:selectitens>

2 respostas
cherador

sou novo com JSF e estou tentando preencher o combo os dados do banco. Porem jah consegui fazer isso, mas o problema é q ele preenche somente com 1 dado o ultimo pra ser mais expecífico.

segue como está na jsp

<h:selectOneMenu id="grupo" value="#{usuario.usuario.grupo}">
                                <f:selectItems value="#{usuario.grupoList}" />
                            </h:selectOneMenu>

e na minha Bean

public SelectItem getGrupoList() throws SQLException {
        conexao = ConexaoBd.getConexao();
        try {

            String sql = "SELECT cd_grupo, nome_grupo FROM grupo";
            //SQL para selecionar todos os dados do registro solicitado
            pStat = conexao.prepareStatement(sql);
            //executa a consulta no Banco
            res = pStat.executeQuery();

            SelectItem combo = new SelectItem();

            while (res.next()) {

                System.out.println(String.valueOf(res.getString("nome_grupo")));

                combo.setLabel(String.valueOf(res.getString("nome_grupo")));

            }    
            return combo;

        } finally {
            //desconecta o banco
            pStat.close();
            res.close();
            conexao.close();
        }
    }

daí nao sei o q está acontecendo. Alguem pode me ajudar??

agradeço desde já

2 Respostas

marciofica

Cara na verdade você tem que criar uma coleção de SelectItem, da forma como você está fazendo realmente vai só pegar o último.

Collection&lt;SelectItem&gt; combo = new ArrayList&lt;SelectItem&gt;();

e dentro do while:

combo.add(new SelectItem("Label", "Valor"));

Espero ter ajudado.

cherador

POw cara mto obrigado me ajudou e mtooo

:stuck_out_tongue:

passei uns 3 dias tentando resolver. Com sua explicação resolvi em 5min
:slight_smile:

vlw abraços vou alterar o título pra Resolvido

Criado 21 de maio de 2010
Ultima resposta 24 de mai. de 2010
Respostas 2
Participantes 2