Bug #595: No connection with jdbc since update to 7.2 - Mailing list pgsql-bugs

From pgsql-bugs@postgresql.org
Subject Bug #595: No connection with jdbc since update to 7.2
Date
Msg-id 200202181330.g1IDUeH42318@postgresql.org
Whole thread Raw
List pgsql-bugs
Norbert Pfaff (np@tangro.de) reports a bug with a severity of 4
The lower the number the more severe it is.

Short Description
No connection with jdbc since update to 7.2

Long Description
Exception in thread "main" Etwas ungewöhnliches ist passiert.  Bitte Teilen Sie diesem Fehler mit: Exception:
java.lang.NullPointerException
Stack Trace:

java.lang.NullPointerException
    at org.postgresql.Connection.openConnection(Unknown Source)
    at org.postgresql.Driver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(DriverManager.java:517)
    at java.sql.DriverManager.getConnection(DriverManager.java:177)
    at TestPostgreSQL.main(TestPostgreSQL.java:84)
End of Stack Trace

    at org.postgresql.Driver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(DriverManager.java:517)
    at java.sql.DriverManager.getConnection(DriverManager.java:177)
    at TestPostgreSQL.main(TestPostgreSQL.java:84)

Sample Code
public class TestPostgreSQL {


    public static void main(String argv[]) throws Exception {

        // Load the driver class
        //
        Class.forName("org.postgresql.Driver");

        // Try to connect to the DB server.
        // We tell JDBC to use the "postgresql" driver
        // and to connect to the "template1" database
        // which should always exist in PostgreSQL.
        // We use the username "postgres" and no
        // password to connect. Since we're not accessing
        // any tables but only an SQL function
        // this should work.
        //
        Connection conn = DriverManager.getConnection(
            "jdbc:postgresql://localhost:5432:template1","postgres","database");

        // Set up and run a query that fetches
        // the current date using the "now()" PostgreSQL function.
        //
        Statement stmt = conn.createStatement();
        ResultSet rset = stmt.executeQuery("SELECT now();");

        // Iterate through the rows of the result set
        // (obviously only one row in this example) and
        // print each one.
        //
        while (rset.next()) {
            System.out.println(rset.getString(1));
        }

        // Close result set, statement and DB connection
        //
        rset.close();
        stmt.close();
        conn.close();

    }


}


No file was uploaded with this report

pgsql-bugs by date:

Previous
From: pgsql-bugs@postgresql.org
Date:
Subject: Bug #592: postgresql-odbc-7.2-1PGDG.i386.rpm lacks the actual shared library
Next
From: Marc Lavergne
Date:
Subject: BLOB support is broken in the 7.2/7.3 JDBC driver, works in 7.1 driver java.sql.SQLException: ERROR: oidin: error in "\377\330\377\340... I'm on Linux 2.4.16 using JDK 1.4.0 but it fails in 1.3.1 as well. Here's a quick reproducible test case: -- start -- package sample.java.jdbc; import java.sql.*; import java.io.*; import java.util.*; class testBlob { public static void main(String args[]) { new testBlob(); System.exit(0); } public testBlob() { System.out.println("Let's begin the test ..."); String v_username = "postgre"; String v_password = "postgre"; String v_database = "jdbc:postgresql://127.0.0.1/TEST"; PreparedStatement v_pstmt = null; try { DriverManager.registerDriver(new org.postgresql.Driver()); Connection v_conn = DriverManager.getConnection( v_database, v_username, v_password); v_conn.setAutoCommit(false); File v_file = new File("/home/postgre/something.jpg"); FileInputStream v_fis = new FileInputStream(v_file); v_pstmt = v_conn.prepareStatement( "insert into lob_test (id,data) values (?,?)"); v_pstmt.setInt(1,2); v_pstmt.setBinaryStream(2,v_fis,(int)v_file.length()); System.out.println("now you see me"); v_pstmt.executeUpdate(); System.out.println("now you don't"); v_conn.commit(); v_fis.close(); v_pstmt.close(); } catch (IOException e_io) { System.out.println(e_io); } catch (SQLException e_sql) { System.out.println(e_sql); } System.out.println("You'll only get here with the 7.1 driver!"); } } -- end -- 01010101010101010101010101010101010101010101010101 Marc P. Lavergne [wk:407-648-6996] Product Development richLAVA Corporation -- "Anyone who slaps a 'this page is best viewed with Browser X' label on a Web page appears to be yearning for the bad old days, before the Web, when you had very little chance of reading a document written on another computer, another word processor, or another network." -Tim Berners-Lee (Technology Review, July 1996) 01010101010101010101010101010101010101010101010101 -- 01010101010101010101010101010101010101010101010101 Marc P. Lavergne [wk:407-648-6996] Product Development richLAVA Corporation -- "Anyone who slaps a 'this page is best viewed with Browser X' label on a Web page appears to be yearning for the bad old days, before the Web, when you had very little chance of reading a document written on another computer, another word processor, or another network." -Tim Berners-Lee (Technology Review, July 1996) java.sql.SQLException: ERROR: oidin: error in "\377\330\377\340... I'm on Linux 2.4.16 using JDK 1.4.0 but it fails in 1.3.1 as well. Here's a quick reproducible test case: -- start -- package sample.java.jdbc; import java.sql.*; import java.io.*; import java.util.*; class testBlob { public static void main(String args[]) { new testBlob(); System.exit(0); } public testBlob() { System.out.println("Let's begin the test ..."); String v_username = "postgre"; String v_password = "postgre"; String v_database = "jdbc:postgresql://127.0.0.1/TEST"; PreparedStatement v_pstmt = null; try { DriverManager.registerDriver(new org.postgresql.Driver()); Connection v_conn = DriverManager.getConnection( v_database, v_username, v_password); v_conn.setAutoCommit(false); File v_file = new File("/home/postgre/something.jpg"); FileInputStream v_fis = new FileInputStream(v_file); v_pstmt = v_conn.prepareStatement( "insert into lob_test (id,data) values (?,?)"); v_pstmt.setInt(1,2); v_pstmt.setBinaryStream(2,v_fis,(int)v_file.length()); System.out.println("now you see me"); v_pstmt.executeUpdate(); System.out.println("now you don't"); v_conn.commit(); v_fis.close(); v_pstmt.close(); } catch (IOException e_io) { System.out.println(e_io); } catch (SQLException e_sql) { System.out.println(e_sql); } System.out.println("You'll only get here with the 7.1 driver!"); } } -- end -- 01010101010101010101010101010101010101010101010101 Marc P. Lavergne [wk:407-648-6996] Product Development richLAVA Corporation -- "Anyone who slaps a 'this page is best viewed with Browser X' label on a Web page appears to be yearning for the bad old days, before the Web, when you had very little chance of reading a document written on another computer, another word processor, or another network." -Tim Berners-Lee (Technology Review, July 1996) 01010101010101010101010101010101010101010101010101 -- 01010101010101010101010101010101010101010101010101 Marc P. Lavergne [wk:407-648-6996] Product Development richLAVA Corporation -- "Anyone who slaps a 'this page is best viewed with Browser X' label on a Web page appears to be yearning for the bad old days, before the Web, when you had very little chance of reading a document written on another computer, another word processor, or another network." -Tim Berners-Lee (Technology Review, July 1996)