Thread: RE: Compiling JDBC Driver - impossible!
If anyone wants to submit to me successfully built Postgres JAR files (1.1 and 1.2), I'm happy to create a site where people can download them... I guess it would be useful to have all manner of JARS (RC-x) available too. Let me know or just submit successfully built JAR's and I'll send a message to the list when the site is ready. I know I'd find this handy sometimes. Cheers, Joe > -----Original Message----- > From: Mike Cannon-Brookes [mailto:mcannon@internet.com] > Sent: Monday, 14 May 2001 11:37 AM > To: pgsql-jdbc@postgresql.org > Subject: [JDBC] Compiling JDBC Driver - impossible! > > > Ok, I give up! > > How do I compile the JDBC driver? I'm running into those dreaded > "InputStream as parameter not supported" errors with my > current build, and > as below this appears to have been fixed. > > So I've sucked down the latest source from CVS. > > Now how do I compile JUST the JDBC driver? > > I've tried > - "ant" in both the root and /src/interfaces/jdbc directory > - "./configure; ant" in both places > - playing with the build file to add major and minor properties myself > > I still get errors about cannot compile {major}; etc. > > Can someone _please_ document the JDBC build process ? (Or > simplify it!) > IMHO (and I know we've had this argument before ;)) it should > just be a > single 'ant' call in the right place, I see no reason this > couldn't work. > > -mike > > > Mike Cannon-Brookes - Founder, Core Developer > OpenSymphony - http://www.opensymphony.com > "The Open Source J2EE Component Project" > > Latest News > - Cache in on faster, more reliable JSPs > http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > > > > > -----Original Message----- > > From: pgsql-jdbc-owner@postgresql.org > > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Bruce Momjian > > Sent: Monday, May 14, 2001 11:13 AM > > To: Ho, Khanh > > Cc: The Hermit Hacker; pgsql-jdbc@postgresql.org > > Subject: Re: Displaying/Pulling Images using JDBC ... > > > > > > > > I am attaching a JDBC patch that is about to be applied for 7.2. > > Perhaps this fixes the problem because it deals with BLOBS. > > > > > > > Hi Marc, > > > > > > I seem to be having the same problem as you when trying to insert > > > audio files into the database. They are inserted OK using > > > PreparedStatement.setBinaryStream(), but the data is truncated > > > when retrieved using PreparedStatement.getBinaryStream(). > > > This occurs using the jdbc7.1beta5 driver. > > > > > > Interestingly, when I try to use an older JDBC driver > (jdbc7.1beta4), it > > > manages to correctly read back the object stored by the > > jdbc7.1beta5 driver. > > > However, the jdbc7.1beta4 driver itself can't write the large > > object to the > > > database. It keeps throwing an exception: InputStream as > parameter not > > > supported. > > > > > > Can you let me know if you find out the cause of the problem, or > > > better still a solution? > > > > > > Thanks, > > > Khanh Ho. > > > > > > > > > > -----Original Message----- > > > > From: The Hermit Hacker [mailto:scrappy@hub.org] > > > > Sent: Sunday, 13 May 2001 2:45 AM > > > > To: pgsql-jdbc@postgresql.org > > > > Cc: peter@retep.org.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@hub.org secondary: > > > > scrappy@{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@postgresql.org) > > > > > > > > > > ---------------------------(end of > broadcast)--------------------------- > > > TIP 5: Have you checked our extensive FAQ? > > > > > > http://www.postgresql.org/users-lounge/docs/faq.html > > > > > > > -- > > Bruce Momjian | http://candle.pha.pa.us > > pgman@candle.pha.pa.us | (610) 853-3000 > > + If your life is a hard drive, | 830 Blythe Avenue > > + Christ can be your backup. | Drexel Hill, > Pennsylvania 19026 > > > > > ---------------------------(end of > broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to > majordomo@postgresql.org >
I agree, this is an excellent idea. A repository of JDBC driver JARs for each different Postgres release - good thinking. Is there somewhere on the Postgres site we can store these / get them mirrored? -mike Mike Cannon-Brookes - Founder, Core Developer OpenSymphony - http://www.opensymphony.com "The Open Source J2EE Component Project" Latest News - Cache in on faster, more reliable JSPs http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > -----Original Message----- > From: pgsql-jdbc-owner@postgresql.org > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Joe Shevland > Sent: Monday, May 14, 2001 11:34 AM > To: 'Mike Cannon-Brookes'; pgsql-jdbc@postgresql.org > Subject: RE: Compiling JDBC Driver - impossible! > > > If anyone wants to submit to me successfully built Postgres JAR files (1.1 > and 1.2), I'm happy to create a site where people can download them... I > guess it would be useful to have all manner of JARS (RC-x) available too. > > Let me know or just submit successfully built JAR's and I'll send > a message > to the list when the site is ready. I know I'd find this handy sometimes. > > Cheers, > Joe > > > -----Original Message----- > > From: Mike Cannon-Brookes [mailto:mcannon@internet.com] > > Sent: Monday, 14 May 2001 11:37 AM > > To: pgsql-jdbc@postgresql.org > > Subject: [JDBC] Compiling JDBC Driver - impossible! > > > > > > Ok, I give up! > > > > How do I compile the JDBC driver? I'm running into those dreaded > > "InputStream as parameter not supported" errors with my > > current build, and > > as below this appears to have been fixed. > > > > So I've sucked down the latest source from CVS. > > > > Now how do I compile JUST the JDBC driver? > > > > I've tried > > - "ant" in both the root and /src/interfaces/jdbc directory > > - "./configure; ant" in both places > > - playing with the build file to add major and minor properties myself > > > > I still get errors about cannot compile {major}; etc. > > > > Can someone _please_ document the JDBC build process ? (Or > > simplify it!) > > IMHO (and I know we've had this argument before ;)) it should > > just be a > > single 'ant' call in the right place, I see no reason this > > couldn't work. > > > > -mike > > > > > > Mike Cannon-Brookes - Founder, Core Developer > > OpenSymphony - http://www.opensymphony.com > > "The Open Source J2EE Component Project" > > > > Latest News > > - Cache in on faster, more reliable JSPs > > http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > > > > > > > > > -----Original Message----- > > > From: pgsql-jdbc-owner@postgresql.org > > > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Bruce Momjian > > > Sent: Monday, May 14, 2001 11:13 AM > > > To: Ho, Khanh > > > Cc: The Hermit Hacker; pgsql-jdbc@postgresql.org > > > Subject: Re: Displaying/Pulling Images using JDBC ... > > > > > > > > > > > > I am attaching a JDBC patch that is about to be applied for 7.2. > > > Perhaps this fixes the problem because it deals with BLOBS. > > > > > > > > > > Hi Marc, > > > > > > > > I seem to be having the same problem as you when trying to insert > > > > audio files into the database. They are inserted OK using > > > > PreparedStatement.setBinaryStream(), but the data is truncated > > > > when retrieved using PreparedStatement.getBinaryStream(). > > > > This occurs using the jdbc7.1beta5 driver. > > > > > > > > Interestingly, when I try to use an older JDBC driver > > (jdbc7.1beta4), it > > > > manages to correctly read back the object stored by the > > > jdbc7.1beta5 driver. > > > > However, the jdbc7.1beta4 driver itself can't write the large > > > object to the > > > > database. It keeps throwing an exception: InputStream as > > parameter not > > > > supported. > > > > > > > > Can you let me know if you find out the cause of the problem, or > > > > better still a solution? > > > > > > > > Thanks, > > > > Khanh Ho. > > > > > > > > > > > > > -----Original Message----- > > > > > From: The Hermit Hacker [mailto:scrappy@hub.org] > > > > > Sent: Sunday, 13 May 2001 2:45 AM > > > > > To: pgsql-jdbc@postgresql.org > > > > > Cc: peter@retep.org.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@hub.org secondary: > > > > > scrappy@{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@postgresql.org) > > > > > > > > > > > > > ---------------------------(end of > > broadcast)--------------------------- > > > > TIP 5: Have you checked our extensive FAQ? > > > > > > > > http://www.postgresql.org/users-lounge/docs/faq.html > > > > > > > > > > -- > > > Bruce Momjian | http://candle.pha.pa.us > > > pgman@candle.pha.pa.us | (610) 853-3000 > > > + If your life is a hard drive, | 830 Blythe Avenue > > > + Christ can be your backup. | Drexel Hill, > > Pennsylvania 19026 > > > > > > > > > ---------------------------(end of > > broadcast)--------------------------- > > TIP 1: subscribe and unsubscribe commands go to > > majordomo@postgresql.org > > > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/users-lounge/docs/faq.html
FYI, I will be applying the outstanding JDBC patches to the main CVS tree tomorrow: http://candle.pha.pa.us/cgi-bin/pgpatches [ Charset ISO-8859-1 unsupported, converting... ] > I agree, this is an excellent idea. A repository of JDBC driver JARs for > each different Postgres release - good thinking. > > Is there somewhere on the Postgres site we can store these / get them > mirrored? > > -mike > > Mike Cannon-Brookes - Founder, Core Developer > OpenSymphony - http://www.opensymphony.com > "The Open Source J2EE Component Project" > > Latest News > - Cache in on faster, more reliable JSPs > http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > > > > > -----Original Message----- > > From: pgsql-jdbc-owner@postgresql.org > > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Joe Shevland > > Sent: Monday, May 14, 2001 11:34 AM > > To: 'Mike Cannon-Brookes'; pgsql-jdbc@postgresql.org > > Subject: RE: Compiling JDBC Driver - impossible! > > > > > > If anyone wants to submit to me successfully built Postgres JAR files (1.1 > > and 1.2), I'm happy to create a site where people can download them... I > > guess it would be useful to have all manner of JARS (RC-x) available too. > > > > Let me know or just submit successfully built JAR's and I'll send > > a message > > to the list when the site is ready. I know I'd find this handy sometimes. > > > > Cheers, > > Joe > > > > > -----Original Message----- > > > From: Mike Cannon-Brookes [mailto:mcannon@internet.com] > > > Sent: Monday, 14 May 2001 11:37 AM > > > To: pgsql-jdbc@postgresql.org > > > Subject: [JDBC] Compiling JDBC Driver - impossible! > > > > > > > > > Ok, I give up! > > > > > > How do I compile the JDBC driver? I'm running into those dreaded > > > "InputStream as parameter not supported" errors with my > > > current build, and > > > as below this appears to have been fixed. > > > > > > So I've sucked down the latest source from CVS. > > > > > > Now how do I compile JUST the JDBC driver? > > > > > > I've tried > > > - "ant" in both the root and /src/interfaces/jdbc directory > > > - "./configure; ant" in both places > > > - playing with the build file to add major and minor properties myself > > > > > > I still get errors about cannot compile {major}; etc. > > > > > > Can someone _please_ document the JDBC build process ? (Or > > > simplify it!) > > > IMHO (and I know we've had this argument before ;)) it should > > > just be a > > > single 'ant' call in the right place, I see no reason this > > > couldn't work. > > > > > > -mike > > > > > > > > > Mike Cannon-Brookes - Founder, Core Developer > > > OpenSymphony - http://www.opensymphony.com > > > "The Open Source J2EE Component Project" > > > > > > Latest News > > > - Cache in on faster, more reliable JSPs > > > http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > > > > > > > > > > > > > -----Original Message----- > > > > From: pgsql-jdbc-owner@postgresql.org > > > > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Bruce Momjian > > > > Sent: Monday, May 14, 2001 11:13 AM > > > > To: Ho, Khanh > > > > Cc: The Hermit Hacker; pgsql-jdbc@postgresql.org > > > > Subject: Re: Displaying/Pulling Images using JDBC ... > > > > > > > > > > > > > > > > I am attaching a JDBC patch that is about to be applied for 7.2. > > > > Perhaps this fixes the problem because it deals with BLOBS. > > > > > > > > > > > > > Hi Marc, > > > > > > > > > > I seem to be having the same problem as you when trying to insert > > > > > audio files into the database. They are inserted OK using > > > > > PreparedStatement.setBinaryStream(), but the data is truncated > > > > > when retrieved using PreparedStatement.getBinaryStream(). > > > > > This occurs using the jdbc7.1beta5 driver. > > > > > > > > > > Interestingly, when I try to use an older JDBC driver > > > (jdbc7.1beta4), it > > > > > manages to correctly read back the object stored by the > > > > jdbc7.1beta5 driver. > > > > > However, the jdbc7.1beta4 driver itself can't write the large > > > > object to the > > > > > database. It keeps throwing an exception: InputStream as > > > parameter not > > > > > supported. > > > > > > > > > > Can you let me know if you find out the cause of the problem, or > > > > > better still a solution? > > > > > > > > > > Thanks, > > > > > Khanh Ho. > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > From: The Hermit Hacker [mailto:scrappy@hub.org] > > > > > > Sent: Sunday, 13 May 2001 2:45 AM > > > > > > To: pgsql-jdbc@postgresql.org > > > > > > Cc: peter@retep.org.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@hub.org secondary: > > > > > > scrappy@{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@postgresql.org) > > > > > > > > > > > > > > > > ---------------------------(end of > > > broadcast)--------------------------- > > > > > TIP 5: Have you checked our extensive FAQ? > > > > > > > > > > http://www.postgresql.org/users-lounge/docs/faq.html > > > > > > > > > > > > > -- > > > > Bruce Momjian | http://candle.pha.pa.us > > > > pgman@candle.pha.pa.us | (610) 853-3000 > > > > + If your life is a hard drive, | 830 Blythe Avenue > > > > + Christ can be your backup. | Drexel Hill, > > > Pennsylvania 19026 > > > > > > > > > > > > > ---------------------------(end of > > > broadcast)--------------------------- > > > TIP 1: subscribe and unsubscribe commands go to > > > majordomo@postgresql.org > > > > > > > ---------------------------(end of broadcast)--------------------------- > > TIP 5: Have you checked our extensive FAQ? > > > > http://www.postgresql.org/users-lounge/docs/faq.html > > > ---------------------------(end of broadcast)--------------------------- > TIP 3: if posting/reading through Usenet, please send an appropriate > subscribe-nomail command to majordomo@postgresql.org so that your > message can get through to the mailing list cleanly > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Already done http://jdbc.fastcrypt.com These are unpatched 7.1 builds. As soon as the cvs source is patched, I will update them Dave ----- Original Message ----- From: "Joe Shevland" <J.Shevland@eclipsegroup.com.au> To: "'Mike Cannon-Brookes'" <mcannon@internet.com>; <pgsql-jdbc@postgresql.org> Sent: Sunday, May 13, 2001 9:34 PM Subject: RE: [JDBC] Compiling JDBC Driver - impossible! > If anyone wants to submit to me successfully built Postgres JAR files (1.1 > and 1.2), I'm happy to create a site where people can download them... I > guess it would be useful to have all manner of JARS (RC-x) available too. > > Let me know or just submit successfully built JAR's and I'll send a message > to the list when the site is ready. I know I'd find this handy sometimes. > > Cheers, > Joe > > > -----Original Message----- > > From: Mike Cannon-Brookes [mailto:mcannon@internet.com] > > Sent: Monday, 14 May 2001 11:37 AM > > To: pgsql-jdbc@postgresql.org > > Subject: [JDBC] Compiling JDBC Driver - impossible! > > > > > > Ok, I give up! > > > > How do I compile the JDBC driver? I'm running into those dreaded > > "InputStream as parameter not supported" errors with my > > current build, and > > as below this appears to have been fixed. > > > > So I've sucked down the latest source from CVS. > > > > Now how do I compile JUST the JDBC driver? > > > > I've tried > > - "ant" in both the root and /src/interfaces/jdbc directory > > - "./configure; ant" in both places > > - playing with the build file to add major and minor properties myself > > > > I still get errors about cannot compile {major}; etc. > > > > Can someone _please_ document the JDBC build process ? (Or > > simplify it!) > > IMHO (and I know we've had this argument before ;)) it should > > just be a > > single 'ant' call in the right place, I see no reason this > > couldn't work. > > > > -mike > > > > > > Mike Cannon-Brookes - Founder, Core Developer > > OpenSymphony - http://www.opensymphony.com > > "The Open Source J2EE Component Project" > > > > Latest News > > - Cache in on faster, more reliable JSPs > > http://www.javaworld.com/javaworld/jw-05-2001/jw-0504-cache.html > > > > > > > > > -----Original Message----- > > > From: pgsql-jdbc-owner@postgresql.org > > > [mailto:pgsql-jdbc-owner@postgresql.org]On Behalf Of Bruce Momjian > > > Sent: Monday, May 14, 2001 11:13 AM > > > To: Ho, Khanh > > > Cc: The Hermit Hacker; pgsql-jdbc@postgresql.org > > > Subject: Re: Displaying/Pulling Images using JDBC ... > > > > > > > > > > > > I am attaching a JDBC patch that is about to be applied for 7.2. > > > Perhaps this fixes the problem because it deals with BLOBS. > > > > > > > > > > Hi Marc, > > > > > > > > I seem to be having the same problem as you when trying to insert > > > > audio files into the database. They are inserted OK using > > > > PreparedStatement.setBinaryStream(), but the data is truncated > > > > when retrieved using PreparedStatement.getBinaryStream(). > > > > This occurs using the jdbc7.1beta5 driver. > > > > > > > > Interestingly, when I try to use an older JDBC driver > > (jdbc7.1beta4), it > > > > manages to correctly read back the object stored by the > > > jdbc7.1beta5 driver. > > > > However, the jdbc7.1beta4 driver itself can't write the large > > > object to the > > > > database. It keeps throwing an exception: InputStream as > > parameter not > > > > supported. > > > > > > > > Can you let me know if you find out the cause of the problem, or > > > > better still a solution? > > > > > > > > Thanks, > > > > Khanh Ho. > > > > > > > > > > > > > -----Original Message----- > > > > > From: The Hermit Hacker [mailto:scrappy@hub.org] > > > > > Sent: Sunday, 13 May 2001 2:45 AM > > > > > To: pgsql-jdbc@postgresql.org > > > > > Cc: peter@retep.org.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@hub.org secondary: > > > > > scrappy@{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@postgresql.org) > > > > > > > > > > > > > ---------------------------(end of > > broadcast)--------------------------- > > > > TIP 5: Have you checked our extensive FAQ? > > > > > > > > http://www.postgresql.org/users-lounge/docs/faq.html > > > > > > > > > > -- > > > Bruce Momjian | http://candle.pha.pa.us > > > pgman@candle.pha.pa.us | (610) 853-3000 > > > + If your life is a hard drive, | 830 Blythe Avenue > > > + Christ can be your backup. | Drexel Hill, > > Pennsylvania 19026 > > > > > > > > > ---------------------------(end of > > broadcast)--------------------------- > > TIP 1: subscribe and unsubscribe commands go to > > majordomo@postgresql.org > > > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/users-lounge/docs/faq.html > >