Tenho um formulário de cadastro com vários campos, inclusive um combo box, a qual quero preencher fazendo um consulta no banco e carregando os dados para ela.
Ex.: Tipo de viatura.
Consultar os tipos no banco e trazer para combo box.
Como faço isso?
Me ajudem!!!
Vc tem que fazer uma iteração na sua coleção de dados (Vector ou List):
<select name="id_viatura">
<logic:iterate id="listar" name="viatura" property="listarViaturas">
<option value="<jsp:getProperty name="listar" property="id_viatura"/>"><jsp:getProperty name="listar" property="viatura"/>
</option>
</logic:iterate>
</select>
Você pode simplificar a sintaxe utilizando somente JSTL e EL (Expression Language)
<select name="tipo">
<c:forEach var="tipo" items="${tipos}">
<option value="${tipo.id}">${tipo.descricao}</option>
</c:forEach>
</select>
Para utilizar as tags acima precisa incluir a declaração abaixo antes de utilizá-la:
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
E deverá colocar os pacotes .jar da JSTL dentro da pasta WEB-INF/lib de seu projeto para que as tags sejam reconhecidas, pois dentro do standard.jar por exemplo estão definidas as TLDs para core, fmt entre outras.