Thread: Something unusual has occured to cause the driver to fail. NullPointerException
Something unusual has occured to cause the driver to fail. NullPointerException
From
Larry Rogers
Date:
Hi all, I'm having trouble opening a database connection to a test database on a fresh PostGreSQL 7.1.3 installation on RedHat 7.1 from the RPMs. I have a simple test class TestPostGreSQL that opens a connection, queries for all the rows in a table and prints the results to standard output. The driver file is in the same directory as the java class, which I execute using java -classpath .:jdbc7.1-1.2.jar TestPostGreSQL I get the following error message: Something unusual has occured to cause the driver to fail. Please report this exception: Exception: java.lang.NullPointerException Stack Trace: java.lang.NullPointerException at org.postgresql.Connection.openConnection(Connection.java:148) at org.postgresql.Driver.connect(Driver.java:122) at java.sql.DriverManager.getConnection(DriverManager.java:517) at java.sql.DriverManager.getConnection(DriverManager.java:177) at TestPostGreSQL.main(TestPostGreSQL.java:17) End of Stack Trace I created the database using createdb testdb and from psql created the table as create table Person ( FirstName char(30) not null, LastName char(30) not null); then created the user and password and granted all permissions on the Person table. I start the server with postmaster -i to get TCP/IP support. The code for the test class is at the end of this message. Note that everything is commented out except for loading the driver and opening a connection. I have used JDBC successfully for months with Microsoft SQL Server, but I'm anxious to switch over to PostGreSQL! Thanks in advance for any help! Larry Rogers ***************************** import java.sql.*; import java.util.Date; public class TestPostGreSQL { public static void main(String[] args) { final String driver = "org.postgresql.Driver"; final String url = "jdbc:postgresql://localhost:5432?database=testdb"; final String login = "TestUser"; final String password = "TestPass"; String sql = "SELECT * FROM Person"; try { Class.forName(driver); Connection connection = DriverManager.getConnection(url, login, password); /* Statement statement = connection.createStatement(); ResultSet result = statement.executeQuery(sql); while (result.next()) { System.out.println(result.getString("FirstName") + " " + result.getString("LastName")); } result.close(); statement.close(); */ connection.close(); } catch(SQLException e) { System.out.println(e); } catch(ClassNotFoundException e) { System.out.println(e); } } }
Your connection url looks funny, it should probably be more like jdbc:postgresql://localhost/testdb dave On Sun, 9 Sep 2001, Larry Rogers wrote: > exception: Exception: java.lang.NullPointerException > Stack Trace: > java.lang.NullPointerException > at org.postgresql.Connection.openConnection(Connection.java:148) > at org.postgresql.Driver.connect(Driver.java:122) > at java.sql.DriverManager.getConnection(DriverManager.java:517) > at java.sql.DriverManager.getConnection(DriverManager.java:177) > at TestPostGreSQL.main(TestPostGreSQL.java:17) > End of Stack Trace > final String url = "jdbc:postgresql://localhost:5432?database=testdb"; -- Dave Weis "I believe there are more instances of the abridgement djweis@sjdjweis.com of the freedom of the people by gradual and silent encroachments of those in power than by violent and sudden usurpations."- James Madison
Re: Something unusual has occured to cause the driver to fail. NullPointerException
From
Larry Rogers
Date:
I tried your URL format with the same results. Thanks anyway! Larry Rogers On Sunday 09 September 2001 20:15, Dave Weis wrote: > Your connection url looks funny, it should probably be more like > jdbc:postgresql://localhost/testdb > > dave >
Re: Something unusual has occured to cause the driver to fail. NullPointerException
From
Barry Lind
Date:
Larry, Shouldn't your connection URL be: jdbc:postgresql://localhost:5432/testdb instead of jdbc:postgresql://localhost:5432?database=testdb thanks, --Barry Larry Rogers wrote: > Hi all, > > I'm having trouble opening a database connection to a test database on a > fresh PostGreSQL 7.1.3 installation on RedHat 7.1 from the RPMs. I have a > simple test class TestPostGreSQL that opens a connection, queries for all the > rows in a table and prints the results to standard output. The driver file > is in the same directory as the java class, which I execute using > > java -classpath .:jdbc7.1-1.2.jar TestPostGreSQL > > I get the following error message: > > Something unusual has occured to cause the driver to fail. Please report this > exception: Exception: java.lang.NullPointerException > Stack Trace: > java.lang.NullPointerException > at org.postgresql.Connection.openConnection(Connection.java:148) > at org.postgresql.Driver.connect(Driver.java:122) > at java.sql.DriverManager.getConnection(DriverManager.java:517) > at java.sql.DriverManager.getConnection(DriverManager.java:177) > at TestPostGreSQL.main(TestPostGreSQL.java:17) > End of Stack Trace > > I created the database using > > createdb testdb > > and from psql created the table as > > create table Person ( > FirstName char(30) not null, > LastName char(30) not null); > > then created the user and password and granted all permissions on the Person > table. > > I start the server with > > postmaster -i > > to get TCP/IP support. The code for the test class is at the end of this > message. Note that everything is commented out except for loading the driver > and opening a connection. I have used JDBC successfully for months with > Microsoft SQL Server, but I'm anxious to switch over to PostGreSQL! > > Thanks in advance for any help! > Larry Rogers > > ***************************** > > import java.sql.*; > import java.util.Date; > > public class TestPostGreSQL { > > public static void main(String[] args) { > > final String driver = "org.postgresql.Driver"; > final String url = "jdbc:postgresql://localhost:5432?database=testdb"; > final String login = "TestUser"; > final String password = "TestPass"; > String sql = "SELECT * FROM Person"; > > try { > Class.forName(driver); > Connection connection > = DriverManager.getConnection(url, login, password); > /* > > Statement statement = connection.createStatement(); > ResultSet result = statement.executeQuery(sql); > > while (result.next()) { > System.out.println(result.getString("FirstName") + " " + > result.getString("LastName")); > } > result.close(); > statement.close(); > */ > connection.close(); > > } catch(SQLException e) { > System.out.println(e); > } catch(ClassNotFoundException e) { > System.out.println(e); > } > } > } > > ---------------------------(end of broadcast)--------------------------- > TIP 6: Have you searched our list archives? > > http://www.postgresql.org/search.mpl > >