Pessoal, estou com a seguinte dificuldade.
Tenho um formulário onde possuo o campo nome, email, endereço e data.
Na minha servleteu pego esses valores, crio meu obj Contato e um objeto ContatoDAO para persistir no banco.
Acontece que estou com problema na conversão da String data para Date e para Calendar.
Ele entra no catch ParseException da classe adicionaContaServlet.
adicionaContatoServlet
[code] protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// Preparando o response
PrintWriter out = response.getWriter();
// Pegando os valores vindo do formulário
String nome = request.getParameter(“nome”);
String email = request.getParameter(“email”);
String endereco = request.getParameter(“endereco”);
String dtNascimento = request.getParameter(“dtNascimento”);
Calendar dataNascimento = null;
// Fazendo a conversão da Data
try{
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(dtNascimento);
dataNascimento = Calendar.getInstance();
dataNascimento.setTime(date);
}
catch(ParseException e){
out.println("Erro de conversao");
return; // para a execução do método
}
// Montando um objeto contato
Contato contato = new Contato();
contato.setNome(nome);
contato.setEmail(email);
contato.setEndereco(endereco);
contato.setData(dataNascimento);
// Salvando o contato no banco
ContatoDAO dao = new ContatoDAO();
dao.adicionaContato(contato);
}
}[/code]
ContatoDAO
[code]public void adicionaContato(Contato contato){
String sql = "inset into contatos (id, nome, email, endereco, dataNascimento) values (cont_seq, ?, ?, ?, ?)";
try{
this.pstmt = this.con.prepareStatement(sql);
this.pstmt.setString(1, contato.getNome());
this.pstmt.setString(2, contato.getEmail());
this.pstmt.setString(3, contato.getEndereco());
this.pstmt.setDate(4, new java.sql.Date(Calendar.getInstance().getTimeInMillis()));
this.pstmt.execute();
this.pstmt.close();
}
catch(SQLException e){
e.printStackTrace();
}
}[/code]