| From: | Hans Deragon <hans(at)deragon(dot)biz> | 
|---|---|
| To: | Dave(at)micro-automation(dot)net | 
| Cc: | 'pgsql-jdbc' <pgsql-jdbc(at)postgresql(dot)org> | 
| Subject: | Re: NullPointer at ResultSet.java:113 | 
| Date: | 2002-03-14 23:41:34 | 
| Message-ID: | 3C91352E.2060908@deragon.biz | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-jdbc | 
Found the problem. I do:
   public static void main(String argv[]) throws Exception
   {
     Class.forName("org.postgresql.Driver");
     Connection m_connection =
       DriverManager.getConnection(DATABASEURL, USERNAME, PASSWORD);
     ResultSet rs =null;
     {
       Statement st = m_connection.createStatement();
       rs = st.executeQuery("SELECT * FROM stocksymbol");
       st.close(); // <------ Problem!
     }
     System.err.println("\nHANS1" + rs);
     rs.beforeFirst();
     System.err.println("\nHANS1b");
     while(rs.next())
     {
       System.err.println("\nHANS2\n");
     }
As you can see, the statement is closed before the ResultSet is used. 
It used to work with old Postgresql drivers, but not the most recent.  I 
  will simply remove the st.close() statement in my close.  I assume 
that there is a finalize() function in the Statement such that the close 
is done automatically when the instance is disposed.
Still, it would be nice if we got a nice exception instead of a 
NullPointer exception.  Can someone correct the code to generate such 
exception?
Sorry for the delay for my response. Its a pet project I am working on, 
on spare time.
Sincerely,
Hans Deragon
Dave Cramer wrote:
> Hans,
> 
> Generally this means that there is nothing in the result set. Can you
> give me some code which demonstrates this bug?
> 
> Dave
> 
> -----Original Message-----
> From: pgsql-jdbc-owner(at)postgresql(dot)org
> [mailto:pgsql-jdbc-owner(at)postgresql(dot)org] On Behalf Of Hans Deragon
> Sent: Saturday, March 09, 2002 6:13 AM
> To: pgsql-jdbc
> Subject: [JDBC] NullPointer at ResultSet.java:113
> 
> 
> Greetings.
> 
> 
>    Upgraded yesterday to the latest pgjdbc2.jar.  I am using JDK 1.4.0. 
>   My database is postgresql-7.1.3-2.  I get:
> 
>          at org.postgresql.jdbc2.ResultSet.next(ResultSet.java:113)
>          at marketmanager.database.StockSymbol.list(StockSymbol.java:93)
>          at 
> marketmanager.datacollection.stocks.YahooCollector.fetchDataFromWeb(Yaho
> oCollector.java:56)
>          at 
> marketmanager.datacollection.stocks.YahooCollector.fetchData(YahooCollec
> tor.java:111)
>          at
> marketmanager.datacollection.FetchData.main(FetchData.java:13)
> 
>    This is a bug for sure.  If there is something wrong I am doing, then
> 
> it should have been caught by an exception and report to me what I was 
> doing wrong.  My code works with an older version of the postgresql jdbc
> 
> driver.  And my code is pretty basic.
> 
>    I could not find on the development website the source of this code. 
>   Anybody can provide a pointer?  May I suggest a direct hyperlink to 
> the code to the development site from the http://jdbc.postgresql.org/?
> 
> 
> Ciao
> Hans
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
> 
> http://www.postgresql.org/users-lounge/docs/faq.html
> 
> 
> 
> 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Joe Shevland | 2002-03-15 02:37:05 | Re: character sets and results | 
| Previous Message | Dave Cramer | 2002-03-14 23:38:39 | Re: maximum java process postgres connections |