Página Inicial do Fórum > Banco de Dados - JDBC / SQL

PostGreeSQL - Falha na Conexão (Urgente)



Criar novo tópico   Responder tópico


  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Galera estou tentando estabelcer uma conexão Java com POstGreeSQL mas, estou tendo um problema:

    meu classpath está:
    C:\Arquivos de programas\Java\jre1.5.0_06\lib\ext\QTJava.zip; C:\Arquivos de programas\PostgreSQL\8.0\jdbc\postgresql-8.0-312.jdbc3.jar;C:\Arquivos de programas\Java\jdk1.5.0_01\bin\postgresql-8.0-312.jdbc3.jar;C:\Arquivos de programas\Java\jdk1.5.0_01\bin;

    e no JCreator eu apontei os caminhos para:
    C:\Arquivos de programas\PostgreSQL\8.0\jdbc\postgresql-8.0-312.jdbc3.jar;
    C:\Arquivos de programas\Java\jdk1.5.0_01\bin\postgresql-8.0-312.jdbc3.jar;
    C:\Arquivos de programas\Java\jdk1.5.0_01\bin;
    :\Arquivos de programas\PostgreSQL\8.0\jdbc\

    mas ainda está dando falha na conexão.

    Onde será que esqueci de colocar alguma coisa???


    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Me esqueci de dizer a exceção que está dando é:
    NullPointerException
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. daltoncamargo
    Posts:8899


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Coloque seu codigo para verificarmos.
    _________________
    Sugestão de Livros

    -- --



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    o código é o mesmo que utilizei em minha casa e funciona sem problemas.
    O negócio que que estou instalando o mesmo sistema eum uma outra máquina e depois de istalar tudo começou a dar este problema.

    Será que me esqueci de algum path ou classpath?
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. daltoncamargo
    Posts:8899


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    christianovale
    o código é o mesmo que utilizei em minha casa e funciona sem problemas.
    O negócio que que estou instalando o mesmo sistema eum uma outra máquina e depois de istalar tudo começou a dar este problema.

    Será que me esqueci de algum path ou classpath?



    Hehhehe.
    Quem sera o campeao deste ano na F1? Heheh, sua pergunta ta bem parecida com essa

    Show me the code dude!
    _________________
    Sugestão de Livros

    -- --



  1. dennisrosa
    Posts:970


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Dalton tá meio nervoso hoje !!!



    verifique se a conexão com o postgres é realizada, utilize o pgAdmin . Depois disso veriifique o classpath.



    Dennis



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Bem, vamos desde o começo então:

    //...
    Class.forName("org.postgresql.Driver");
    Connection conexao = DriverManager.getConnection("jdbc:postgresql://localhost:5432/siceBD", "postgres", "12345");
    Statement comando = conexao.createStatement();
    ResultSet rs = comando.executeQuery("select login from usuario order by login");
    // ...

    ISTO FUNCIONA EM MINHA CASA, mas, mas quando tento istalar o sistema na máquina de um cliente a JVM solta um NullPointerException.

    Com o PGAdminIII eu consigo visualizar todo o Banco de Dados.

    O que será que posso fazer para corrigir isto?
    Obrigado!
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. dennisrosa
    Posts:970


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    christianovale

    ISTO FUNCIONA EM MINHA CASA



    agora é voce que está nervoso.... tenha calma.

    O funcionamento na sua casa não implica em dizer que o seu codigo está 100% correto.


    O problema mais comum é a falta do driver jdbc no classpath.

    Verifique linha a linha o que está executando:


    Class.forName("org.postgresql.Driver");


    verifique se o driver está realmente no classpath.




    Connection conexao = DriverManager.getConnection("jdbc:postgresql://localhost:5432/siceBD", "postgres", "12345");



    verifique que consegue estabelecer a conexão com o banco de dados.


    Statement comando = conexao.createStatement();
    ResultSet rs = comando.executeQuery("select login from usuario order by login");



    verifique se o comando sql está funcionado corretamente, pode ser que na outra maquina não exista a tabela ou algum campo...




    Eu recomendo deixar comentado todo o codigo e ir retirando o comentário aos poucos, seria interessante postar o seu codigo pois apenas com esse trecho não dá para saber qual o erro. Outra coisa que ajuda muito é o stacktrace do erro.


    Espero que isso te ajude !!


    Um Abraço,
    Dennis



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Muito obrigado, Dennis. Consegui resolver o problema.
    Valew!
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. dennisrosa
    Posts:970


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    christiano,

    onde estava o problema ? , explica ai pois outras pessoas podem passar pela mesma situação.


    um Abraço,
    Dennis



  1. rodcefet
    Posts:2


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Cristiano se vc não recebeu meu email . eu gostaria de saber se vc consegiui solucionar o seu problema de conexão do postgreSQL com o java e tomcat .. e como fez isso .. .?
    Grato

    Rodrigo Batista



  1. christianovale
    Posts:163


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Rodrigo, desculpe, nao recebi nenhum e-mail, mas, o problema que enfrentei quando enviei este post foi o seguinte:

    1º: confira as dicas que o dennisrosa colocou para me ajudar (ali está tudo que vc precisa conferir e mais o Classpath);
    2º: o PostGres é case-sensitive, ou seja, de nada adianta toda a configuraçao estar certa e os nomes nao corresponderem;

    No meu caso (que admito que foi uma manota imensa), toda configuraçao estava certa e funcionava perfeitamente em minha casa, porem quando fui instalar o sistema na maquina de um cliente, acidentalmente coloquei a primeira letra do nome do banco de dados em Maiuscula (Connection conexao = DriverManager.getConnection("jdbc:postgresql://localhost:5432/SiceBD", "postgres", "12345") e no codigo a referencia estava (Connection conexao = DriverManager.getConnection("jdbc:postgresql://localhost:5432/siceBD", "postgres", "12345")

    por isso nao funcionava!
    _________________
    JavaFree.org
    ------------------
    Christiano Vale
    Desenvolvedor



  1. rodcefet
    Posts:2


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Bom cristiano primeiramente obrigado cara ..
    Entaum mas o problema persiste, pois eh estranho parece que o tomcat naum está reconhecendo o driver ("org.postgresql.Driver) e isso que eu já setei em todas as libs possíveis dele. mas o banco conecta normalmente . pois eu fiz uma classe teste da conexão direto no jcreator mesmo .. e o banco conecta normalmente, eu até realizo uma select e trago um nome de um cliente para a tela . e naum eh problema na string de conexão pois se eu mudar alguma coisa na string de conexao tipo uma maiuscula no nome do banco já naum conecta como vc disse.... minha String de conexao eh esta:
    con = DriverManager.getConnection"jdbc:postgresql://localhost:5432/bancoecomerce","postgres1", "44567");

    Entaum mas quando inicio o tomcat.. ele dah aquele mesmo erro que dava com vc java.lang.NullPointerException, estou tentando isso faz dias jah .. naum sei se preciso setar alguma coisa no webapps do tomcat. colocar algum diretorio lib.. com os drivers do postgreSQL,,, se vc souber de alguma coisa para me ajudar ? por favor ..
    Valew.. mesmo cara .. abraçaum



  1. Relacionados





Novo tópico   Responder tópico     Índice do forum -> Banco de Dados - JDBC / SQL