Erro na inserção no banco de dados pq?

5 respostas
TASF

pq nao insere no bd ?

tenho a seguinte servelet

package br.com.projecao.conexao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import br.com.projecao.bean.Usuario;

public class Conexao{
	
	private final String urlDB = "jdbc:mysql://localhost/dbtst";
	private final String usuario = "root";
	private final String senha = "";
	
	
	public Connection criarConexao(){
		Connection con = null;
		try{
			Class.forName("com.mysql.jdbc.Driver");
			con = DriverManager.getConnection(urlDB, usuario, senha);
			System.out.println("Conexao realizada com sucesso");
		}catch(ClassNotFoundException e){
			e.printStackTrace();
		}catch(SQLException e){
			e.printStackTrace();
		}catch(Exception e){
			e.printStackTrace();
		}
		
		return con;
	}
	
	public static void main(String[] args) {
		new Conexao().criarConexao();
	}
	
	
	public String cadastrarUsuario(Usuario u)throws SQLException, Exception{
		String sql = "insert into usuario(nome, endereco) values(?,?)";
		PreparedStatement pstm = null;
		String retorno = "";
		try{
			pstm = criarConexao().prepareStatement(sql);
			pstm.setString(1, u.getNome());
			pstm.setString(2, u.getEndereco());
			pstm.execute();
			retorno = "Dados cadastrados com sucesso";
		}catch(SQLException e){
			e.printStackTrace();
			retorno = "Ocorreu um erro com o Banco de Dados";
		}catch(Exception e){
			retorno = "Ocorreu um erro com o Sistema";
		}
		
		return retorno;
	}

}

e a jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
	String usuario = null;
	if(request.getAttribute("usuario") != null){
		usuario = (String)request.getAttribute("usuario");
	}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>:::... Cadastro ...:::</title>
</head>
<body>
<%if(usuario != null){ %>
<p style="color: red; font: bold;"><%=usuario %></p>
<%} %>	
	<form action="/Login/LoginServlet?acao=cadastrar" method="post" id="frmCadastro" name="frmCadastro">
		<table>
			<tr>
				<td>
					Nome:
				</td>
				<td>
					<input type="text" name="nome" id="nome" maxlength="80" size="50">
				</td>
			</tr>
			<tr>
				<td>
					Endereço:
				</td>
				<td>
					<input type="text" name="endereco" id="endereco" maxlength="80" size="50">
				</td>
			</tr>
			<tr>
				<td>
					<input type="submit" value="Salvar">
				</td>
			</tr>
		</table>
	</form>
</body>
</html>

quando eu executo me da o seuguinte erro no console

30/11/2011 01:26:43 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;.
30/11/2011 01:26:43 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:app_Login' did not find a matching property.
30/11/2011 01:26:43 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
30/11/2011 01:26:43 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 909 ms
30/11/2011 01:26:43 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
30/11/2011 01:26:43 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.26
30/11/2011 01:26:43 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
30/11/2011 01:26:44 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
30/11/2011 01:26:44 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/34  config=null
30/11/2011 01:26:44 org.apache.catalina.startup.Catalina start
INFO: Server startup in 631 ms
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at br.com.projecao.conexao.Conexao.criarConexao(Conexao.java:20)
	at br.com.projecao.conexao.Conexao.cadastrarUsuario(Conexao.java:44)
	at br.com.projecao.login.LoginServlet.cadastrar(LoginServlet.java:101)
	at br.com.projecao.login.LoginServlet.doPost(LoginServlet.java:57)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)

alguem sabe o porque desse erro ?
desde ja grato por qualquer tipo de ajuda .

5 Respostas

Hebert_Coelho

Vc adicionou a biblioteca no classpath? E na pasta WebContent/WEB-INF/lib?

A

complementando, vc tbm deve adicionar o .jar na pasta lib do tomcat.

t+

TASF

nao , ainda nao sei configurar no tom cat !!! como posso addo jar na pasta lib do tom cat? e tbm biblioteca no classpath na pasta WebContent/WEB-INF/lib?
grato

TASF

fala que ocorreu um erro no sistema ,linha 53 do servlet conexao

TASF

GRATO PELAS DICAS… CONSEGUI!!!

VLW T+

Criado 29 de novembro de 2011
Ultima resposta 30 de nov. de 2011
Respostas 5
Participantes 3