Select por BD

4 respostas
louis_bb

Eai pessoal…

alguém sabe como eu faço pra setar os slects na jsp, pegando argumentos de um banco de dados?!

minha ideia ta mais ou menos assim, o banco devolve uma Collection chamada lista, então eu pego jogo ela numa Taglib dentro de um for, get.bancodedados

soh q nao ta dando certo, o select ta indo vazio…

4 Respostas

louis_bb

caso seja nescessario eu posso colar os codigos aqui

louis_bb

Aqui eu to chamando a Dao;

if(login.equals("") && senha.equals("")){
			VooDAO vdao = new VooDAO();
			req.setAttribute("lista", vdao.BuscarVoo());
			RequestDispatcher rd = req.getRequestDispatcher("cadastro.jsp");
			rd.forward(req, res);
		}else{
			RequestDispatcher rd = req.getRequestDispatcher("index.jsp");
			rd.forward(req, res);
		}

O meu codigo DAO

public Collection<Voo> BuscarVoo (){
		 Collection <Voo> lista = new ArrayList <Voo>();
		 ResultSet rs = null;
		 Connection conn = null;
		 PreparedStatement ps = null;
		 PoolConexao pc;
		 
		 try {
			pc = new PoolConexao();
			conn = pc.getConnection();
			ps = conn.prepareStatement(SQL_BUSCA_VOO);
			rs = ps.executeQuery();
			Voo voo = null;
			
			while(rs.next()){
				voo = new Voo();
				voo.setVoo(rs.getInt("numero"));
				lista.add(voo);
			}
		} catch (NamingException e) {
				e.printStackTrace();
		} catch (SQLException e) {
				e.printStackTrace();
		}
		return lista;
	 }

A jsp

<form id="form2" name="form2" method="post" action="Listar">
  <div align="right">
    <p>Exibir lista de passageiros do Voo:
      <select name="voos" onclick="submit">
       <voo:Voos  lista="${lista}" />
      </select>
    </p>
  </div>
</form>
louis_bb

A taglib

private Collection <Voo>  lista;
		
		public void setLista(Collection <Voo> lista) {
			this.lista = lista;
		}
		
		public Collection <Voo> getLista() {
			return lista;
		}
		
		public int doStartTag()throws JspException{
			
			JspWriter out = pageContext.getOut();
		
		    try{
			  			
			  
			  for(Voo voo : lista){
				   	out.println("<option>"+voo.getVoo());
			  }
			
				
		    } catch (IOException e) {
				e.printStackTrace();

			}
		return SKIP_BODY;
	}

Ele não ta apresentando erros cara, simplesmente não ta colocando os options

Spool

Posta o código e de preferência os erros apresentados.

Criado 3 de outubro de 2007
Ultima resposta 3 de out. de 2007
Respostas 4
Participantes 2