From: | Ingo Luetkebohle <ingo(at)blank(dot)pages(dot)de> |
---|---|
To: | pgsql-interfaces(at)postgresql(dot)org |
Subject: | jdbc: getBinaryStream blocks on second call |
Date: | 2000-12-03 16:13:02 |
Message-ID: | 20001203171302.B1619@blank.pages.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-interfaces |
Hello,
I'm using the Postgresql-JDBC interface inside of a Jave Server Page
and request a large object. When the page is first called, it works
fine. When its called twice for the same database row, the
ResultSet.getBinaryStream method blocks infinetely. This is on
postgresql 7.0.3 (from RPM, on Linux, glibc).
The code is something like:
dbc.setAutoCommit(false);
Statement st = dbc.createStatement();
ResultSet rs = st.executeQuery("SELECT contents FROM file WHERE id=" + id);
dbc.commit();
if(rs.next()) {
Reader r = new InputStreamReader(rs.getBinaryStream(1));
char buf[] = new char[2048];
for(int read = r.read(buf); read != -1; read = r.read(buf))
out.write(buf, 0, read);
out.flush();
r.close();
is.close();
}
(yes, I known that the getBytes method is more convenient but the
JspWriter class a JSP page provides can't write byte[], only char[])
--
Ingo Luetkebohle / ingo(at)blank(dot)pages(dot)de / 95428014
/
|PraxisXML Open Source contact; Computational Linguistics
|student; Fargonauten.DE sysadmin; Gimp Registry (not-)maintainer;
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Speegle | 2000-12-03 19:10:21 | Re: jdbc: getBinaryStream blocks on second call |
Previous Message | Martin Zeigler | 2000-12-03 14:21:32 | Null values with the JDBC driver |