Bom dia a todos,
Estou tentando conectar ao MySQL e estou tendo alguns problemas, os códigos que estou utilizando são os seguintes:
package conexao;
import java.sql.*;
public class Conexao {
public Connection con;
public Statement stm;
private String sit = "";
public Conexao() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/exercicio","root","vertrigo");
stm = con.createStatement();
sit = "Conexão efetuada com sucesso";
} catch (Exception e) {
sit = "não foi possível conectar ao banco" + e.getMessage();
}
}
public String getSituacao(){
return sit;
}
}
E:
<%@page contentType="text/html"%>
<jsp:useBean id="con" class="conexao.Conexao"/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Teste Conexão</title>
</head>
<body>
<h1>Teste Conexão</h1>
<p>A situação do banco é :
<jsp:getProperty name="con" property="situacao"/>
</p>
</body>
</html>
O primeiro código chamado Conexao.java está dentro do Tomcat em: ROOT/Teste/WEB-INF/lib/conexao/Conexao.java
O segundo chamado conexao.jsp está em: ROOT/Teste/conexao.jsp
Quando executo da um HTTP Status 500, indicando que Teste/conexao.jsp (2,3) The value for useBean class atribute conexao.Conexao is invalid.
É como se não estivesse reconhecendo o pacote conexao…
Alguém pode me ajudar?
Então ricardo, existem varios detalhes que você vai ter que analisar:
1º) O primeiro passo que você deve fazer é tirar seu projeto do diretorio ROOT, o ROOT é a aplicação principal do tomcat então você não deve colocar coisas suas dentro dessa aplicação.
Dentro de webapps, crie um diretorio que vai ser seu projeto por exemplo crie um chamada Teste.
2º) O diretorio lib serve para colocar as dependencia do seu projeto, ou seja, os .jar que sua aplicação depende para subir e funcionar corretamente, sua classe de conexão não deve ficar lá e sim dentro de um diretorio chamado classes.
3º) Não esqueça de adicionar o jar do mysql para sua aplicação funcionar e conseguir se conectar com o banco de dados.
Boa sorte nos estudos.
Falou.
Pelo que vi também sua intenção é contruir uma aplicação web para se conectar a base de dados, então instala uma IDE como por exemplo o eclipse e crie um projeto web.
Depois gere um arquivo .war pelo eclipse, ele vai montar todo estrutura que o tomcat necessita para sua aplicação funcionar, acho que dessa maneira é mais fácil de você compreender o funcionamento e estrutura de uma aplicação web.
Falou.
Certo Caio,
Fiz os passos indicados e continua o mesmo erro.
Agora a estrutura está assim:
webapps/Teste/conexao.jsp
E:
webapps/Teste/WEB-INF/classes/conexao/Conexao.java
webapps/Teste/WEB-INF/lib/conector-mysql…
Continua com esse erro:
HTTP Status 500, indicando que Teste/conexao.jsp (2,3) The value for useBean class atribute conexao.Conexao is invalid.
Estava usado o Eclipse porém deu alguns Bugs.
Aí passei para o Dreamweaver…
Estrutura básica das classes para desenvolvimento web.
src ? código fonte java (.java)
build ? onde o WTP compila as classes (.class)
WebContent ? content directory (páginas, imagens, css etc vão aqui)
WebContent/WEB-INF ? pasta oculta com configurações e recursos do sistema
WebContent/WEB-INF/lib ? bibliotecas
WebContent/WEB-INF/classes ? arquivos compilados são copiados para cá
Se vc estiver se batendo pra desenvolver essa conexão, sugiro que leia a apostila da Caelum FJ-21, começa com banco de dados e depois passa para programação web.
Tudo bem Fernando.
Só que o problema não é a conexão e sim a própria estrutura da aplicação.
Pois já fiz o teste com outro arquivo de conexão e deu tudo certo.