Duplicidade no selectOneMenu... Socorro

1 resposta
W

Estou buscando informações do banco e populando o selectOneMenu, mas esta populando por duas vezes.

JSP

<h:selectOneMenu id="nucleo" value="#{servicos.nucleo}"> <f:selectItems value="#{menu.nucleo}"/> </h:selectOneMenu>

faces-config

<managed-bean> <managed-bean-name>menu</managed-bean-name> <managed-bean-class>Configuracao.Menu</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean>

class Menu

Public SelectItem[] getNucleo() throws SQLException { ln.buscarNucleo(); nomeNucleo = ln.getNomeNucleo(); codigoNucleo = ln.getCodigoNucleo(); int size = ln.get_sizeN(); SelectItem[] menuNucleo; menuNucleo = new SelectItem[size]; for (int i = 0; i < size; i++) { menuNucleo[i] = new SelectItem(new String((String) codigoNucleo.elementAt(i)), (String) nomeNucleo.elementAt(i)); } return menuNucleo; }

class Serviços

Public void buscarNucleo() throws SQLException { Empresa em = new Empresa(); buscar = em.buscarNucleo(); try { stm = c.con.createStatement(); rs = stm.executeQuery(buscar); if (rs.next()) { do { nomeNucleo.addElement(rs.getString("DS_NUCLEO")); codigoNucleo.addElement(rs.getString("CD_NUCLEO")); } while (rs.next()); } else { informacao = "Nenhum nucleo localizada, entre em contato com o administrador"; } } catch (SQLException e) { System.err.println("Erro buscarNucleo: " + e); informacao = "Informe o administrador\nERRO: " + e; } rs.close(); stm.close(); }

Alguem pode me dar uma luz?
Obrigado

1 Resposta

eltonk

Adicione um distinct na sua consulta SQL ou use alguma implementação de Set ao invés de Array.

[]s

Criado 26 de novembro de 2007
Ultima resposta 27 de nov. de 2007
Respostas 1
Participantes 2