Oii gente, to desenvolvendo uma pagina web, um portfólio, e uso um campo input select em que as opções serão baseadas na busca de dados do BD, tentei usar JSTL algo que não sei mas li que era mais correto que scriplets, parece tudo correto de acordo com o que pesquisei mas ele não exibe nada.
index.jsp
<label class="control-label" for="localizacaoA">Localização</label>
<p>Aqui você poderá ver e selecionar a localização dos usuários com a área de atuação escolhida.</p>
<select class="form-control" name="area">
<option value="">Selecione uma opção</option>
<c:forEach items="${listaEstados}" var="teste">
<option value="${teste.nome}"><c:out value="${teste.nome}"/></option>
</c:forEach>
</select>
enviar.java (servlet)
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
UsuariosDAO dao = new UsuariosDAO();
// Query data from Database.
List<Usuarios> lista = dao.readAll();
System.out.println("Lista: " + lista);
// Store Data into 'listaEstados' attribute of request.
request.setAttribute("listaEstados", lista);
request.getRequestDispatcher("index.jsp").forward(request, response);
}
UsuariosDAO.java
public List<Usuarios> readAll() {
Connection con = ConnectionFactory.getConnection();
PreparedStatement stmt = null;
ResultSet rs = null;
List<Usuarios> usuariosAll = new ArrayList<>();
try {
stmt = con.prepareStatement("SELECT * FROM usuarios_cadastrados");
rs = stmt.executeQuery();
while (rs.next()) {
Usuarios usuarioU = new Usuarios();
usuarioU.setNome(rs.getString("nome"));
usuariosAll.add(usuarioU);
}
} catch (SQLException ex) {
throw new RuntimeException("Erro: ", ex);
} finally {
ConnectionFactory.closeConnection(con, stmt, rs);
}
return usuariosAll;
}