Erro ao tentar conectar no banco de dados WEB

30/11/2020

0

Pessoal estou criando um arquivo que faz a conexão com o meu banco de dados (estou utilizando o xanpp para rodar o apache, tomcat e o mysql), porém encontro o seguinte erro:



HTTP Status 500 – Internal Server Error

Type Exception Report

Message An exception occurred processing [/SITE/gravar.jsp] at line [19]

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

org.apache.jasper.JasperException: An exception occurred processing [/SITE/gravar.jsp] at line [19] 16: 17: // carrega o driver na memoria 18: 19: Class.forName( driver ); 20: 21: // criar variavel para conectar com banco de dados 22: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:618) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:500) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Root Cause

javax.servlet.ServletException: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:917) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:846) org.apache.jsp.SITE.gravar_jsp._jspService(gravar_jsp.java:140) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Root Cause

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1952) org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1795) org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:126) org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63) java.lang.Class.forName0(Native Method) java.lang.Class.forName(Unknown Source) org.apache.jsp.SITE.gravar_jsp._jspService(gravar_jsp.java:101) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Note The full stack trace of the root cause is available in the server logs.







E o meu código é o seguinte:



<%@page language="java" import="java.sql.*" %>

<%

// cria as variaveis e obtem os dados digitados pelo usuario
String vnome = request.getParameter("txtnome");
String vapelido = request.getParameter("txtapelido");
String vnaci = request.getParameter("txtnaci");

// variaveis para acessar o banco de dados
String banco = "inscrições";
String usuario = "root";
String senha = "";
String url = "jdbc:mysql://localhost:3306/" + banco;
String driver = "com.mysql.jdbc.Driver";

// carrega o driver na memoria

Class.forName( driver );

// criar variavel para conectar com banco de dados

Connection conexao;

// abrir a conexao com o banco
conexao = DriverManager.getConnection( url , usuario , senha ) ;

String sql = "insert into cadastro (nome,idade,email) values('" + vnome + "','"+ vapelido + "', '"+ vnaci + "')";

// cria o statement
// ele é o responsável por executar o comando do SQL
Statement stm = conexao.createStatement() ;

// executa o comando do SQL
stm.executeUpdate( sql ) ;

stm.close() ;
conexao.close() ;

out.print("<br><br>") ;
out.print("Dados gravados com sucesso!!!") ;

out.print("<br><br>") ;
out.print("<a href='cadastro.html'>Voltar</a>") ;

%>





Alguem sabe me dizer o que houve?
Raul

Raul

Responder

Post mais votado

30/11/2020


// variaveis para acessar o banco de dados
String banco = "inscrições";
String usuario = "root";
String senha = "";
String url = "jdbc:mysql://localhost:3306/" + banco;
String driver = "com.mysql.jdbc.Driver";

O seu banco tem acentos e cedilha? Pois é bem difícil um banco com nome possuindo acentuação e cedilha. Outro detalhe seu root não tem senha? É completamente inseguro assim msm?

Chromusmaster

Chromusmaster
Responder

Mais Posts

02/12/2020

Raul


// variaveis para acessar o banco de dados
String banco = "inscrições";
String usuario = "root";
String senha = "";
String url = "jdbc:mysql://localhost:3306/" + banco;
String driver = "com.mysql.jdbc.Driver";

O seu banco tem acentos e cedilha? Pois é bem difícil um banco com nome possuindo acentuação e cedilha. Outro detalhe seu root não tem senha? É completamente inseguro assim msm?




Sim, o root não tem senha mesmo, é apenas para um projeto da faculdade... Eu acabei mudando o nome do banco e esse problema foi resolvido, agora estou com o seguinte problema..... acredito que seja algo na linha 1 do código, mas não faço ideia do que seja




HTTP Status 500 – Internal Server Error
Type Exception Report

Message An exception occurred processing [/SITE/gravar.jsp] at line [84]

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

org.apache.jasper.JasperException: An exception occurred processing [/SITE/gravar.jsp] at line [84]

81: // ele é o responsável por executar o comando do SQL
82: Statement stmt = conexao.createStatement();
83:
84: stmt.executeUpdate (sql);
85:
86: stmt.close();
87: conexao.close();


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:618)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:500)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Root Cause

javax.servlet.ServletException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '')'' at line 1
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:917)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:846)
org.apache.jsp.SITE.gravar_jsp._jspService(gravar_jsp.java:189)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Root Cause

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '')'' at line 1
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
java.lang.reflect.Constructor.newInstance(Unknown Source)
com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
com.mysql.jdbc.Util.getInstance(Util.java:408)
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3933)
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3869)
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2675)
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)
com.mysql.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1536)
com.mysql.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2585)
com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1464)
org.apache.jsp.SITE.gravar_jsp._jspService(gravar_jsp.java:166)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Note The full stack trace of the root cause is available in the server logs.

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar