Re: Problems with ResultSet

From: Aydın Toprak <aydin(dot)toprak(at)intengo(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Problems with ResultSet
Date: 2005-10-28 12:38:13
Message-ID: 43621BB5.9050308@intengo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc


Ok you are right, that works... however I really dont understand why it
fails...
I though that I get all the results in my ResultSet obeject and keep it
safe , distant from closing connections or statements...

as for returning my objects,
I want all the result set .. so that I think,in these circumstances,
there is no need to generate my own objects and add them to the
returning vector...

am I mising a point?

João Paulo Ribeiro wrote:

> David is rigth.
> And try to avoid returning resultset. If your method need to return
> something do it with your own objects.
> Do something like:
>
> -> get connection
> -> create statement on the connection
> -> execute statement and get resultset
> -> iterate resultset and create your own object with the information
> needed
> -> close statement
> -> return the object you created with the information from the resultset
>
> Note: if your using a pool always release the connection to the pool.
>
>
> Regards.
> João Paulo Ribeiro
>
>
> David Goodenough wrote:
>
>>Closing the statement closes everything that came from it, i.e. the ResultSet.
>>So you need to delay closing the statement until after you have finished with
>>the ResultSet.
>>
>>David
>>
>>On Friday 28 October 2005 11:18, Aydın Toprak wrote:
>>
>>
>>>Hiii,
>>>
>>>
>>>I have just stuck with a little point of my code which generates "This
>>>ResultSet is closed." exception ....
>>>
>>>here is my stack trace ...
>>>org.postgresql.util.PSQLException: This ResultSet is closed.
>>>org.postgresql.jdbc2.AbstractJdbc2ResultSet.checkClosed(AbstractJdbc2Result
>>>Set.java:2444)
>>>
>>>org.postgresql.jdbc2.AbstractJdbc2ResultSet.next(AbstractJdbc2ResultSet.jav
>>>a:1810)
>>>
>>>org.apache.jsp.event.Proposal.frameBuyer_jsp._jspService(org.apache.jsp.eve
>>>nt.Proposal.frameBuyer_jsp:61)
>>>
>>>org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>>>javax.servlet.http.HttpServlet.service(HttpServlet.java:802) ... and
>>>continues...
>>>
>>>
>>>
>>>I want to return ResultSet from static method (I have never did before,
>>>I guess I can ..??.) ... I get resultset from my jsp page and want to
>>>display it ...
>>>so ı wrote this database access staff into another class file to sperate
>>>them ... anyway..
>>>
>>>
>>>try
>>> {
>>> stmnt = con.prepareStatement(query);
>>> stmnt.setInt(1, event_id);
>>> ps = stmnt.executeQuery();
>>> stmnt.close();
>>> connMgr.freeConnection("mypool", con);
>>> if(ps.next())
>>> out.append("This is your element :"+ps.getInt("event_id"));
>>> }
>>>
>>>this is the part of the code wich generated that exception...
>>>
>>>as a result of my obeservations and try... I can directly point that the
>>>porblem comes from this
>>> if(ps.next())
>>> out.append("This is your element :"+ps.getInt("event_id"));
>>>
>>>part of the code...
>>>
>>>
>>>but I dont understand why?.... the query is file, P.statement and
>>>connection is exist ... and also there is an integer coloumn "event_id"
>>>in table...
>>>
>>>is it about the static method or what..? ..
>>>
>>>Thanks..
>>>
>>>---------------------------(end of broadcast)---------------------------
>>>TIP 2: Don't 'kill -9' the postmaster
>>>
>>>
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 1: if posting/reading through Usenet, please send an appropriate
>> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
>> message can get through to the mailing list cleanly
>>
>>
>>
>>
>
>
>--
>João Paulo Ribeiro | Senior Software Engineer
>jp(at)mobicomp(dot)com
>
>PHONE: + 351 253 305 250
>FAX : + 351 253 305 250
>www.mobicomp.com
>
>________________________________________________________________
>
>About Solutions | Wireless World
>
>CONFIDENTIALITY NOTICE: This message, as well as existing attached files, is confidential and intended exclusively for the individual(s) named as addressees. If you are not the intended recipient, you are kindly requested not to make any use whatsoever of its contents and to proceed to the destruction of the message, thereby notifying the sender.
>DISCLAIMER: The sender of this message can not ensure the security of its electronic transmission and consequently does not accept liability for any fact which may interfere with the integrity of its content.
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message David Goodenough 2005-10-28 13:03:09 Re: Problems with ResultSet
Previous Message João Paulo Ribeiro 2005-10-28 10:56:29 Re: Problems with ResultSet