Re: JDBC in PostgreSql for Linux - Mailing list pgsql-general

From Kallol Nandi
Subject Re: JDBC in PostgreSql for Linux
Date
Msg-id NBEDKIHMDKLGDCDIJLMMMEEDCAAA.kallol.nandi@indussoft.com
Whole thread Raw
In response to Re: JDBC in PostgreSql for Linux  (Dmitry Tkach <dmitry@openratings.com>)
Responses Re: JDBC in PostgreSql for Linux  (Thomas Kellerer <spam_eater@gmx.net>)
List pgsql-general
I have changed the url to "jdbc:postgresql://"+server+":"+port+"/"+database


import java.sql.*;
import java.util.*;
import org.postgresql.Driver;

public class JDBCConnection
{
public static void main(String args[])
  {
try
     {
     String server ="10.100.102.31";
     String port ="5432";
     String database="notes";
     String url="jdbc:postgresql://"+server+":"+port+"/"+database;
     String userid="postgres";
     String password="postgres";
     Class.forName("org.postgresql.Driver").newInstance();
     //Driver d = (org.postgresql.Driver)(DriverManager.getDriver(url));
     //DriverManager.registerDriver(d);
     Enumeration enum = DriverManager.getDrivers();
     while (enum.hasMoreElements())
     {
        System.out.println("Has Driver");
        System.out.println(enum.nextElement().toString());
     }

     System.out.println("Successful 1 ! ");
     java.sql.Connection
con=DriverManager.getConnection(url,userid,password);
     java.sql.Statement stmt = con.createStatement();
     java.sql.ResultSet rset = stmt.executeQuery ("Select count(*) as c from
testtable");
     rset.next();
     int currval = rset.getInt("c");

     System.out.println("Successful 2 ! ");
     System.out.println(currval);
     con.close();
     }
     catch(Exception ex) {
     System.out.println("Error problem!");
     System.out.println(ex.getMessage());
     ex.printStackTrace();
     return;
   }
 }
}

but still the same problem.here is the error


Has Driver
org.postgresql.Driver@8071ea0
Successful 1 !
Error problem!
Driver not found for URL: jdbc:postgresql://10.100.102.31:5432/notes
java.sql.SQLException: Driver not found for URL:
jdbc:postgresql://10.100.102.31:5432/notes
   at 0x4028115f: java.lang.Throwable.Throwable(java.lang.String)
(/usr/lib/libgcj.so.3)
   at 0x402740d2: java.lang.Exception.Exception(java.lang.String)
(/usr/lib/libgcj.so.3)
   at 0x40316294: java.sql.SQLException.SQLException(java.lang.String,
java.lang.String, int) (/usr/lib/libgcj.so.3)
   at 0x40316244: java.sql.SQLException.SQLException(java.lang.String)
(/usr/lib/libgcj.so.3)
   at 0x40316102: java.sql.DriverManager.getConnection(java.lang.String,
java.util.Properties) (/usr/lib/libgcj.so.3)
   at 0x4031603a: java.sql.DriverManager.getConnection(java.lang.String,
java.lang.String, java.lang.String) (/usr/lib/libgcj.so.3)
   at 0x4039d347: ffi_call_SYSV (/usr/lib/libgcj.so.3)
   at 0x4039d307: ffi_raw_call (/usr/lib/libgcj.so.3)
   at 0x40248528: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation)
(/usr/lib/libgcj.so.3)
   at 0x40248e34: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw,
_Jv_InterpMethodInvocation) (/usr/lib/libgcj.so.3)
   at 0x40246424: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw, void)
(/usr/lib/libgcj.so.3)
   at 0x4039d1bc: ?? (??:0)
   at 0x4025b308: gnu.gcj.runtime.FirstThread.call_main()
(/usr/lib/libgcj.so.3)
   at 0x402c60b1: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.3)
   at 0x40267fdc: _Jv_ThreadRun(java.lang.Thread) (/usr/lib/libgcj.so.3)
   at 0x4023478c: _Jv_RunMain(java.lang.Class, byte const, int, byte const,
boolean) (/usr/lib/libgcj.so.3)
   at 0x08048900: ?? (??:0)
   at 0x420158d4: ?? (??:0)
   at 0x080486c1: ?? (??:0)


If I uncomment the following lines
     //Driver d = (org.postgresql.Driver)(DriverManager.getDriver(url));
     //DriverManager.registerDriver(d);
and run the application I get null pointer exception as
DriverManager.getDriver(url) does not get a driver for the corresponding
Url.
But DriverManager.getDrivers() works fine and also returns the available
postgresql driver which I want.
I am not able to get the mistake.What might be the problem with the url?
Please do reply.It is urgent.

Thanks and Regards,
Kallol.




-----Original Message-----
From: Dmitry Tkach [mailto:dmitry@openratings.com]
Sent: Saturday, June 21, 2003 2:18 AM
To: Kallol Nandi
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] JDBC in PostgreSql for Linux


You've got your url wrong - it should be "://" after postrgesql instead
of "@"

I hope, it helps...

Dima

Kallol Nandi wrote:

>Hi,
>
>This is the code that I am using for native JDBC Driver to connect to
>PostgreSql in Linux.
>BTW the version of Postgres is 7.2.2 and the jar file is jdbc7.1-1.2.jar.
>
>***************************************************************************
*
>*********
>import java.io.*;
>import java.sql.*;
>import java.util.Properties;
>import java.util.Vector;
>import org.postgresql.Driver;
>
>public class JDBCConnection
> {
>public static void main(String args[])
>  {
>System.out.println("Testing");
>try
>     {
>     String server ="10.100.102.31";
>     String port ="5432";
>     String database="notes";
>     String url="jdbc:postgresql@"+server+":"+port+":"+database;
>     String userid="postgres";
>     String password="postgres";
>     Class.forName("org.postgresql.Driver");
>     System.out.println("Successful 1 ! ");
>     Connection con=DriverManager.getConnection(url,userid,password);
>     Statement stmt = con.createStatement();
>     ResultSet rset = stmt.executeQuery ("Select count(*) as c from
>testtable");
>     rset.next();
>     int currval = rset.getInt("c");
>     System.out.println("Successful 2 ! ");
>     System.out.println(currval);
>     con.close();
>     }
>catch(Exception ex) {
>System.out.println("Error problem!");
>System.out.println(ex.getMessage());
>ex.printStackTrace();
>return;
>   }
> }
>}
>
>
>
>
>***************************************************************************
*
>*********
>I am getting the error mentioned i my earlier mail in the following line :
>
>     Connection con=DriverManager.getConnection(url,userid,password);
>
>The error is :
>***************************************************************************
*
>**
> I get the following error :
> Driver not found for URL: jdbc:postgresql@10.100.102.31:5432:notes
> java.sql.SQLException: Driver not found for URL:
>jdbc:postgresql@10.100.102.31:5432:notes
>    at 0x4028115f: java.lang.Throwable.Throwable(java.lang.String)
>(/usr/lib/libgcj.so.3)
>    at 0x402740d2: java.lang.Exception.Exception(java.lang.String)
>(/usr/lib/libgcj.so.3)
>    at 0x40316294: java.sql.SQLException.SQLException(java.lang.String,
>java.lang.String, int) (/usr/lib/libgcj.so.3)
>    at 0x40316244: java.sql.SQLException.SQLException(java.lang.String)
>(/usr/lib/libgcj.so.3)
>    at 0x40316102: java.sql.DriverManager.getConnection(java.lang.String,
>java.util.Properties) (/usr/lib/libgcj.so.3)
>    at 0x4031603a: java.sql.DriverManager.getConnection(java.lang.String,
>java.lang.String, java.lang.String) (/usr/lib/libgcj.so.3)
>    at 0x4039d347: ffi_call_SYSV (/usr/lib/libgcj.so.3)
>    at 0x4039d307: ffi_raw_call (/usr/lib/libgcj.so.3)
>    at 0x40248528: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation)
>(/usr/lib/libgcj.so.3)
>    at 0x40248e34: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw,
>_Jv_InterpMethodInvocation) (/usr/lib/libgcj.so.3)
>    at 0x40246424: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw,
void)
>(/usr/lib/libgcj.so.3)
>    at 0x4039d1bc: ?? (??:0)
>    at 0x4025b308: gnu.gcj.runtime.FirstThread.call_main()
>(/usr/lib/libgcj.so.3)
>    at 0x402c60b1: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.3)
>    at 0x40267fdc: _Jv_ThreadRun(java.lang.Thread) (/usr/lib/libgcj.so.3)
>    at 0x4023478c: _Jv_RunMain(java.lang.Class, byte const, int, byte
const,
>boolean) (/usr/lib/libgcj.so.3)
>    at 0x08048900: ?? (??:0)
>    at 0x420158d4: ?? (??:0)
>    at 0x080486c1: ?? (??:0)
>***************************************************************************
*
>*********
>
>
>Thanks and Regards,
>Kallol.
>
>-----Original Message-----
>From: pgsql-general-owner@postgresql.org
>[mailto:pgsql-general-owner@postgresql.org]On Behalf Of Thomas Kellerer
>Sent: Friday, June 20, 2003 4:12 PM
>To: pgsql-general@postgresql.org
>Subject: Re: [GENERAL] JDBC in PostgreSql for Linux
>
>
>
>Kallol Nandi schrieb:
>
>
>>I am running a Java application on Linux which connects to the Postgresql
>>
>>
>on Linux using jdbcodbc bridge.
>
>
>>But this is the error I am getting :
>>
>>I have also tried running a Java application using the Native JDBC Driver.
>>I get the following error :
>>Driver not found for URL: jdbc:postgresql@10.100.102.31:5432:notes
>>java.sql.SQLException: Driver not found for URL:
>>
>>
>jdbc:postgresql@10.100.102.31:5432:notes
>
>
>>   at 0x4028115f: java.lang.Throwable.Throwable(java.lang.String)
>>
>>
>(/usr/lib/libgcj.so.3)
>
>
>>   at 0x402740d2: java.lang.Exception.Exception(java.lang.String)
>>
>>
>(/usr/lib/libgcj.so.3)
>
>
>>   at 0x40316294: java.sql.SQLException.SQLException(java.lang.String,
>>
>>
>java.lang.String, int) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x40316244: java.sql.SQLException.SQLException(java.lang.String)
>>
>>
>(/usr/lib/libgcj.so.3)
>
>
>>   at 0x40316102: java.sql.DriverManager.getConnection(java.lang.String,
>>
>>
>java.util.Properties) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x4031603a: java.sql.DriverManager.getConnection(java.lang.String,
>>
>>
>java.lang.String, java.lang.String) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x4039d347: ffi_call_SYSV (/usr/lib/libgcj.so.3)
>>   at 0x4039d307: ffi_raw_call (/usr/lib/libgcj.so.3)
>>   at 0x40248528: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation)
>>
>>
>(/usr/lib/libgcj.so.3)
>
>
>>   at 0x40248e34: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw,
>>
>>
>_Jv_InterpMethodInvocation) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x40246424: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw,
>>
>>
>void) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x4039d1bc: ?? (??:0)
>>   at 0x4025b308: gnu.gcj.runtime.FirstThread.call_main()
>>
>>
>(/usr/lib/libgcj.so.3)
>
>
>>   at 0x402c60b1: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.3)
>>   at 0x40267fdc: _Jv_ThreadRun(java.lang.Thread) (/usr/lib/libgcj.so.3)
>>   at 0x4023478c: _Jv_RunMain(java.lang.Class, byte const, int, byte
>>
>>
>const, boolean) (/usr/lib/libgcj.so.3)
>
>
>>   at 0x08048900: ?? (??:0)
>>   at 0x420158d4: ?? (??:0)
>>   at 0x080486c1: ?? (??:0)
>>
>>Please do reply me asap.
>>
>>
>>
>I have no real experience with Linux but as far as I know the JdbcOdbc
>bridge is only distributed with the JDK for windows.
>
>I'd suggest you stick with the native JDBC driver.
>The second error indicates an error with your classpath. Is there a
>reason why you don't use the SUN JDK for development? Does the GNU
>compiler support Class.forName() (which is the usual way of registering
>the drive) in the meantime?
>
>Without your code, it's really hard to tell where your error is.
>
>Thomas
>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: Have you checked our extensive FAQ?
>
>               http://www.postgresql.org/docs/faqs/FAQ.html
>
>



pgsql-general by date:

Previous
From: Mark Kirkwood
Date:
Subject: Re: Tru64 experience? Was Re: [Fwd: PostGreSQL information]
Next
From: Thomas Kellerer
Date:
Subject: Re: JDBC in PostgreSql for Linux