...How to remove ?

From: "Subhramanya Shiva" <shiva(at)archeanit(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: ...How to remove ?
Date: 2001-05-13 16:43:10
Message-ID: 1031.192.168.0.2.989772190.squirrel@mail.archeanit.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

How to remove from this mailing list !!!!

regards
Shiva

> Hi Marc,
>
> I'm not sure if you've had a successful solution worked out by now, but
our
> web application frequently stores and retrieves images (GIF and JPEG at
this
> stage) using the 7.1 (RC 4 or 5 I think) code and I haven't encountered a
> problem yet. Another application stores all manner of binary files
(anything
> the user throws at it, PDF/Word/etc) and again, we haven't seen a problem.
>
> Some notes on the code:
>
> i) I use the setAutoCommit(false) method of the Connection class for all
> large object dealings (select/insert/update) as this seems to be required
> (ensures commits don't occur after each statement or whatever).
>
> ii) I've tended to use setBytes() instead of setBinaryStream() in the
> PreparedStatement object. Unsure if this matters, but I usally get passed
an
> array of bytes from the image uploading code. Streams may be more
efficient
> but I'm not sure if this is where the bug lies, if indeed it is a bug.
>
> Also, if you want to try out uploading/downloading the offending image I
can
> give you an account on our 'WebFormX' product site to see if its works
> against Postgres, basically builds online forms and you can upload form
> logos/backgrounds as well as image fields.
>
> Cheers,
> Joe
>
> > -----Original Message-----
> > From: The Hermit Hacker [mailto:scrappy(at)hub(dot)org]
> > Sent: Sunday, 13 May 2001 2:45 AM
> > To: pgsql-jdbc(at)postgresql(dot)org
> > Cc: peter(at)retep(dot)org(dot)uk
> > Subject: [JDBC] Displaying/Pulling Images using JDBC ...
> >
> >
> >
> >
> > Morning folks ...
> >
> > Been wracking our brains on this one for too long now ... have a
> > client that is trying to use JDBC to pull images stored in
> > the database,
> > and, from what we can gather, the images are coming out
> > 'truncated' ...
> >
> > If the client stores the images as ASCII (uuencoded) and pulls
> > those out, all works well, but if he stores them as
> > binary/raw images, the
> > images don't come out ...
> >
> > If he retrieves that image using psql and stores it to a file,
> > that file is fine, so apparently the backend is storing it
> > properly ...
> >
> > According to the table schema that we have, the image is being
> > stored as an 'oid' type ...
> >
> > In relation to the image settings, they are counting the bytes
> > that the stream is going to send to the client and verifying it on the
> > clients side, the numbers are not matching unless it is an ascii based
> > file....
> >
> > Both the backend server and the JDBC drivers are v7.1 ...
> >
> > Now, my thought on this is that it *sounds* like the JDBC is
> > hitting some sort of control character is the stream that
> > tells it to stop
> > sending the image ... is this possible? Some binary
> > character that needs
> > to somehow be trapped?
> >
> > Image content is a mostly a faxed document saved as .tif format.
> > But it could be anything and we derive it from the file name.
> > We upload
> > the document to the database. Please See the source
> >
> > Sample of the source they are using is as follows, is
> > there something
> > that we are seeing:
> >
> > PreparedStatement prepStmt = con.prepareStatement(selectstatement);
> > prepStmt.setString(1, medicalRecordId);
> > ResultSet rs = prepStmt.executeQuery();
> > if (rs.next()) {
> > medicalRecordId = rs.getString(1);
> > typeSOAP = rs.getString(2);
> > code = rs.getString(3);
> > String datetimetemp = rs.getString(4);
> > datetime = Timestamp.valueOf(datetimetemp);
> > testObject = rs.getString(5);
> > testResult = rs.getString(6);
> > note = rs.getString(7);
> > appointmentId = rs.getString(8);
> > patientId = rs.getString(9);
> > test = rs.getString(10);
> > category = rs.getString(11);
> >
> > //if(imageName == null){
> > if(imageNametemp != null){
> > imageName = rs.getString(12);
> >
> >
> > BufferedInputStream bis = new
> > BufferedInputStream(rs.getBinaryStream(13));
> > System.out.println("value of bis"+bis.toString());
> > //InputStream is = rs.getBinaryStream(13);
> >
> > //System.out.println("vale of inputstream"+is.toString());
> >
> > int TotLen=0;
> >
> > ByteArrayOutputStream imageOutputStream = new
> > ByteArrayOutputStream(8164);
> >
> > byte[] b = new byte[8164];
> > int len=0;
> >
> > try {
> > while( (len = bis.read(b,0,8164)) != -1 ) {
> > imageOutputStream.write(b,0,len);
> >
> > TotLen += len;
> > }
> > bis.close();
> > imageAsBytes = imageOutputStream.toByteArray();
> >
> > System.out.println("value of baoslenght"+imageAsBytes.length);
> > System.out.println("value of totlenght"+TotLen);
> >
> > System.out.println("vale of
> > baos"+imageOutputStream.toString());
> > }
> > catch(IOException e) {
> > }
> > }
> > prepStmt.close();
> >
> >
> > Marc G. Fournier ICQ#7615664
> > IRC Nick: Scrappy
> > Systems Administrator @ hub.org
> > primary: scrappy(at)hub(dot)org secondary:
> > scrappy(at){freebsd|postgresql}.org
> >
> >
> > ---------------------------(end of
> > broadcast)---------------------------
> > TIP 2: you can get off all lists at once with the unregister command
> > (send "unregister YourEmailAddressHere" to
> > majordomo(at)postgresql(dot)org)
> >
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: 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
>

--
Subhramanya Shiva, Programmer
Archean InfoTech pvt.Ltd.
Hyderabad, India
http://www.archeanit.com

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message Ho, Khanh 2001-05-14 00:58:54 RE: Displaying/Pulling Images using JDBC ...
Previous Message Joe Shevland 2001-05-13 12:37:47 RE: Why?? executeQuery() & exception: "No results were returnedby the query."