Erro na conexão

3 respostas
alexandremanowar

E ae pessoal blz

Eu estou fazendo uma conecão de java com mysql em linux (mandriva 2007) e esta dando erro, eu fiz os seguintes passos:

Intalei o jdk e setei normalmente e ele ficou funcionando ok (opt/jdk)
Intalei o Tomcat e setei e ficou funcionando ok (opt/apache-tomcat-6.0.10 q)
iniciei o tomcat e funcionou blz o servidor carregou (/opt/apache-tomcat-6.0.10/bin/startup.sh)
fiz umas jsp de “Hello world” e fiz alguns servlets que realizavam cálculos e exbiam resultado em jsp, compilei tudo e funcionou ok.
Então instalei o mysql e fiz uma tabelinha e o mysql ficou funcionando ok
baixei o mysql connector e descompactei no /opt/mysql-connector-java-5.0.5
abri arquivo Java.sh que fica no diretório /etc/profile.d/ e fiz o classtah dessa forma:

#!/bin/sh 
export JAVA_HOME=/opt/jdk
export PATH=$JAVA_HOME/bin:$PATH

TOMCAT_HOME=/opt/apache-tomcat-6.0.10;export JAVA_HOME


CLASSPATH=$CLASSPATH:$JAVA_HOME\jre\lib:$JAVA_HOME\jre\lib\tools.jar:/opt/mysql-connector-java-5.0.5/mysql-connector-java-5.0.5-bin.jar:$JAVA_HOME/lib
export CLASSPATH

então fiz o servlet de conexão dessa forma:

package com.example.conexao;

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

public final class Conexao{
    public static Connection conectar(){
        // base de dados é "test"
        String url = "jdbc:mysql://localhost/fidelity";
        String usuario = "root";
        String senha = "";
        
        try{
           Class.forName("com.mysql.jdbc.Driver").newInstance();
           Connection conn = DriverManager.getConnection(url, usuario, senha);
           return conn;
        } 
        catch(SQLException ex){
           System.err.println("SQLException: " + ex.getMessage());
           System.err.println("SQLState: " + ex.getSQLState());
           System.err.println("VendorError: " + ex.getErrorCode());
           return null;
        }
        catch(Exception e){
           System.err.println("Problemas ao tentar conectar com o banco de dados");
           return null; 
        }
    }
}

eo um jsp para testar dessa forma:

<%@ page language="java" import="java.sql.*, com.example.conexao.Conexao" %>
<html>
<head><title>Aprendendo JSP</title>
</head>
<body>

<%
  Connection conn = Conexao.conectar();
  
  // testa se a conexão foi efetuada com sucesso
  if(conn != null)
  {
    out.println("Conexão efetuada com sucesso!");
  }
  else
  {
    out.println("Não funfou essa merda!!");
  }
%>

O único resultado que ele exibe na minha tela é o msn do else. Onde estou errando? Sei que existem formas mais elegantes de trabalhar com jsp sem usar scripts, o certo é usar tags e EL mas estou começando agora e só fiz esse script para testar a conexão. Onde estou errando?
Detalhe eu não uso IDE faço tudo na mão e compilo manualmente, não sei se é bom ou ruim, gosto de fazer o código na mão porque acho que as IDE como Netbeans e Eclipse enchem o código de lixo e cria uma estrutura muito ruim, não sei se estou certo, aceito opinião

3 Respostas

alexandremanowar

Então pessoal estou refazendo a minha conexão e estou testando usando o netbeans 5.5 dessa vez minha conexão ficou assim:
servlet:

/*
 * Conexao.java
 *
 * Created on 11 de Abril de 2007, 23:28
 */

package conexao;

import java.sql.*; 

public  class Conexao{
    public static Connection conectar(){
       
        String url = "jdbc:mysql://localhost/fidelity";
        String usuario = "root";
        String senha = "";
        
        try{
           Class.forName("com.mysql.jdbc.Driver");
           Connection conn = DriverManager.getConnection(url, usuario, senha);
	   //Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/fidelity","root","");
           return conn;
        } 
        catch(SQLException ex){
           System.err.println("SQLException: " + ex.getMessage());
           System.err.println("SQLState: " + ex.getSQLState());
           System.err.println("VendorError: " + ex.getErrorCode());
           return null;
        }
        catch(Exception e){
           System.err.println("Problemas ao tentar conectar com o banco de dados");
           return null; 
        }
    }
}

e o pagina de teste ficou assim:

<%@ page language="java" import="java.sql.*, conexao.Conexao, com.mysql.jdbc.Connection" %>
<html>
<head><title>Aprendendo JSP</title>
</head>
<body>

<%
  Connection conn = Conexao.conectar();
  
  // testa se a conexão foi efetuada com sucesso
  if(conn != null)
  {
    out.println("Conexão efetuada com sucesso!");
  }
  else
  {
    out.println("Não funfou essa merdaaaaa!!");
  }
%>

Esta dando essa msn de erro:

Ou seja esta dando erro na minha jsp, pelo menos é o que eu entendi mas ainda não consegui consertar. Alguém sabe onde estou errando?
Fiz tudo como manda o figurino colocar o mysql-connector-java-5.0.5-bin.jar na Libraries

alexandremanowar

Essa setinha “^” ela esta exatamente embaixo dos parenteses, aqui na exibição ficou incorreto

everson_z

Batendo o olho parece esta ok o cod…
O jar de conexao eu apenas add ele na pasta lib do projeto

Criado 11 de abril de 2007
Ultima resposta 11 de abr. de 2007
Respostas 3
Participantes 2