Fala moçada estou com uma pequena duvida.
2 - Coloque um link na sua lista-contatos-elegante.jsp que abre a página testa-altera-mvc.jsp passando
o Id do contato que você quer alterar. Deixe o campo Id visível no form mas não alterável. Não
esqueça de passar o campo Id pela requisição. Faça com que os campos do form estejam populados com
os dados do contato a ser editado.
Como faço para popular minha pagina tentei deste modo porem sem sucesso
[code]
<c:import url=“cabecalho.jsp” />
Formulário para alteração de contatos:
<form action="mvc" method="post">
Id:
<input type="text" name="id" value="${param.id}" readonly/><br/>
Nome:
<input type="text" name="nome" value="${requestScope.nome}"/><br/>
E-mail:
<input type="text" name="email" value="${requestScope.email}"/><br/>
Endereço:
<input type="text" name="endereco" value="${requestScope.endereco}"/><br/>
Data de Nascimento:
<caelum:campoData id="dataNascimento"/>
<input type="hidden"
name="logica" value="AlteraContatoLogic"/>
<input type="submit" value="Enviar"/>
</form>
<c:import url="rodape.jsp"/>
[/code]
[code]
public class AlteraContatoLogic implements Logica {
@Override
public void executa(HttpServletRequest req, HttpServletResponse res)
throws Exception {
Contato contato = new Contato();
long id = Long.parseLong(req.getParameter("id"));
contato.setId(id);
contato.setNome(req.getParameter("nome"));
contato.setEndereco(req.getParameter("endereco"));
contato.setEmail(req.getParameter("email"));
String dataEmTexto = req.getParameter("dataNascimento");
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(dataEmTexto);
Calendar dataNascimento = Calendar.getInstance();
dataNascimento.setTime(date);
contato.setDataNascimento(dataNascimento);
ContatoDAO dao = new ContatoDAO();
dao.altera(contato);
RequestDispatcher rd = req.getRequestDispatcher("/lista-contatos-elegante.jsp");
rd.forward(req, res);
System.out.println("Alterando Contato..."+contato.getNome());
}
}
[/code]
Obrigado