Thread: JDBC2 driver failure

JDBC2 driver failure

From
Haig Ehramdjian
Date:
Hello,

I have some code that does the following:

ResultSet rs = stmt.executeQuery("myQuery");

while (rs.next()) {
    //some processing
    String query = "blahblah";
    ResultSet rs2 = stmt.executeQuery(query);
}

All the processing up to rs2 works fine, but the instant I try to get the
result set,
I get the following errors in my catalina.out log file on Tomcat4:

java.lang.NullPointerException
        at org.postgresql.jdbc2.ResultSet.next(ResultSet.java:113)
        at
org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java)

Any ideas? This is part of an in-house app I'm building and seems to be the
last stumbling block.

Thanks a lot,
Haig Ehramdjian


Re: JDBC2 driver failure

From
Barry Lind
Date:
Haig,

You need to use a different Statement object for the second query.
According to the jdbc spec you can have only one result set open at a
time for a given statement.  So when in the code you create rs2 from
stmt you are causing rs to automatically be closed.  Then when the next
iteration of the look is executed rs.next() will fail.

--Barry


Haig Ehramdjian wrote:
> Hello,
>
> I have some code that does the following:
>
> ResultSet rs = stmt.executeQuery("myQuery");
>
> while (rs.next()) {
>     //some processing
>     String query = "blahblah";
>     ResultSet rs2 = stmt.executeQuery(query);
> }
>
> All the processing up to rs2 works fine, but the instant I try to get the
> result set,
> I get the following errors in my catalina.out log file on Tomcat4:
>
> java.lang.NullPointerException
>         at org.postgresql.jdbc2.ResultSet.next(ResultSet.java:113)
>         at
> org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java)
>
> Any ideas? This is part of an in-house app I'm building and seems to be the
> last stumbling block.
>
> Thanks a lot,
> Haig Ehramdjian
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>


Re: JDBC2 driver failure

From
"Wadhwa, Amit"
Date:
use a different statement object for the nested resultset.
ie.
ResultSet rs = null;
ResultSet rs2 = null;
Statement stmt = con.createStatement();
Statement stmt2 = con.createStatement();

rs = stmt.executeQuery("myQuery");

while (rs.next()) {
    //some processing
    String query = "blahblah";
    rs2 = stmt2.executeQuery(query);
}
-----Original Message-----
From: Haig Ehramdjian [mailto:haige@cae.com]
Sent: Wednesday, March 26, 2003 1:58 AM
To: Mailing List: PGSQL (E-mail)
Subject: [JDBC] JDBC2 driver failure


Hello,

I have some code that does the following:

ResultSet rs = stmt.executeQuery("myQuery");

while (rs.next()) {
    //some processing
    String query = "blahblah";
    ResultSet rs2 = stmt.executeQuery(query);
}

All the processing up to rs2 works fine, but the instant I try to get the
result set,
I get the following errors in my catalina.out log file on Tomcat4:

java.lang.NullPointerException
        at org.postgresql.jdbc2.ResultSet.next(ResultSet.java:113)
        at
org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java)

Any ideas? This is part of an in-house app I'm building and seems to be the
last stumbling block.

Thanks a lot,
Haig Ehramdjian


---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster


Re: JDBC2 driver failure

From
Haig Ehramdjian
Date:
Thanks Barry, I implemented a 2nd Statement and it works like a charm.

Haig Ehramdjian

-----Original Message-----
From: Barry Lind [mailto:blind@xythos.com]
Sent: Thursday, March 27, 2003 12:00 AM
To: Haig Ehramdjian
Cc: Mailing List: PGSQL (E-mail)
Subject: Re: [JDBC] JDBC2 driver failure


Haig,

You need to use a different Statement object for the second query.
According to the jdbc spec you can have only one result set open at a
time for a given statement.  So when in the code you create rs2 from
stmt you are causing rs to automatically be closed.  Then when the next
iteration of the look is executed rs.next() will fail.

--Barry


Haig Ehramdjian wrote:
> Hello,
>
> I have some code that does the following:
>
> ResultSet rs = stmt.executeQuery("myQuery");
>
> while (rs.next()) {
>     //some processing
>     String query = "blahblah";
>     ResultSet rs2 = stmt.executeQuery(query);
> }
>
> All the processing up to rs2 works fine, but the instant I try to get the
> result set,
> I get the following errors in my catalina.out log file on Tomcat4:
>
> java.lang.NullPointerException
>         at org.postgresql.jdbc2.ResultSet.next(ResultSet.java:113)
>         at
> org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java)
>
> Any ideas? This is part of an in-house app I'm building and seems to be
the
> last stumbling block.
>
> Thanks a lot,
> Haig Ehramdjian
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>