Tento gravar no banco de dados usando web mas me da esse erro. testei a insercao sem usar web e aceitou. porfavor me ajudem

1 resposta
java
A

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error that prevented it from fulfilling this request.

exception

java.lang.RuntimeException

br.com.caelum.jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:15)

br.com.caelum.jdbc.DAO.ContatoDao.(ContatoDao.java:13)

br.com.caelum.agenda.servlet.AdicionaContatoServlet.service(AdicionaContatoServlet.java:54)

javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.68 logs.

Apache Tomcat/7.0.68

package br.com.caelum.agenda.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;
import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import br.com.caelum.jdbc.DAO.ContatoDao;
import br.com.caelum.jdbc.modelo.Contato;

@WebServlet("/adicionaContato")

public class AdicionaContatoServlet extends HttpServlet {

<a class="mention" href="/u/override">@Override</a>

protected void service(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {
PrintWriter out = response.getWriter();
	
	String nome = request.getParameter("nome");
	String email = request.getParameter("email");
	String endereco = request.getParameter("endereco");
	String dataEmTexto = request.getParameter("dataNascimento");
	
	Calendar dataNascimento = null;
	
	//fazendo a convercao
	try{
		Date data = new SimpleDateFormat("dd/MM/yyyy").
				parse(dataEmTexto);
		dataNascimento = Calendar.getInstance();
		dataNascimento.setTime(data);
	}catch(ParseException e){
		out.println("Erro de Convercao de data");
		return; //para execucao do metodo
	}
	
	//montar um objecto contato
	Contato contato = new Contato();
	contato.setNome(nome);
	contato.setEmail(email);
	contato.setEndereco(endereco);
	contato.setDataNascimento(dataNascimento);
	
	//salvar o contato
	ContatoDao dao = new ContatoDao();
	dao.adicionar(contato);
	
	//imorime o nome que foi adicionado
	out.println("<html>");
	out.println("<body>");
	out.println("Contato "+contato.getNome() +
			" Adicionado com Sucesso");
	out.println("</body>");
	out.println("</html>");
}

}

package br.com.caelum.jdbc.DAO;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import br.com.caelum.jdbc.ConnectionFactory;
import br.com.caelum.jdbc.modelo.Contato;

public class ContatoDao {

private Connection connection;

public ContatoDao(){

this.connection = new ConnectionFactory().getConnection();

}

public void adicionar(Contato contato)

{

String sql=INSERT INTO contatos(nome,email,endereco,dataNascimento)

+ VALUES(?,?,?,?);

try{

PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setString(1, contato.getNome());
		stmt.setString(2, contato.getEmail());
		stmt.setString(3, contato.getEndereco());
		stmt.setDate(4, new java.sql.Date(contato.
				getDataNascimento().getTimeInMillis()));
	
		stmt.execute();
		stmt.close();
	}catch(SQLException e){
		throw new RuntimeException(e);
	}
}

}

Insert title here Nome: Email: Endereco: Data Nascimento:
<input type="submit" value="GRAVAR" name="gravar" class="botao">
</form>

1 Resposta

E

Posta o código do seu form e o log completo do tomcat

Criado 9 de março de 2016
Ultima resposta 9 de mar. de 2016
Respostas 1
Participantes 2