eae galera, estou com um erro que não tenho ideia onde esta… então eu apenas quero que pegar um combo do banco de dados… mas esta dando esse erro estranho…
// erro
javax.servlet.jsp.JspException: Cannot find bean under name listaMarcas
// meu codigo html
<html:form action="Action?method=inicio">
Selecione uma Marca do Carro
<html:select property="idMarca" styleId="idMarca">
<html:option value="" styleId="idMarca">
Marca
</html:option>
<html:options collection="listaMarcas" name="MarcaModelo" property="nomeMarca" labelName="nomeMarca" />
</html:select>
</html:form>
[code]
//meu struts config
<action-mappings>
<action path="/Action" type="br.Action" parameter="method" name="MarcaModelo" input="/index.jsp" scope="session">
<forward name="retorno" path="/index.jsp"/>
</action>
</action-mappings>
[/code]
[code]
// minha action
public ActionForward inicio(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)throws Exception {
MarcaModelo marcaModelo = (MarcaModelo) form;
MarcaDao marcaDao = new MarcaDao();
List<MarcaModelo> listaMarcas = marcaDao.RecuperarMarcas();
request.setAttribute("listaMarcas", listaMarcas);
return mapping.findForward("retorno");
}[/code]
//meu form
private String idModelo;
private String nomeModelo;
private String idMarca;
private String nomeMarca;
private List<MarcaModelo> listaMarca;
private List<MarcaModelo> listaModelo;
// get e set
[code]
// meu metodo no dao
public List RecuperarMarcas() {
String sql = “SELECT * FROM tb_marca”;
try {
PreparedStatement ps = conexao.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
List listaMarcas = new ArrayList();
while (rs.next()){
MarcaModelo marca = new MarcaModelo();
marca.setIdMarca(rs.getString("id"));
marca.setNomeMarca(rs.getString("nome"));
listaMarcas.add(marca);
}
rs.close();
System.out.println("Sucesso no metodo Listar Marcas");
return listaMarcas;
} catch (Exception e) {
System.out.println("erro no metodo listar marca");
e.printStackTrace();
}
return null;
}[/code]