db-ojb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleg Nitz ...@ukr.net>
Subject Re: Fw: oracle lobs implemented
Date Sat, 14 Dec 2002 10:57:11 GMT
Hi Michael,

From my experience of working with Oracle BLOBs the only way to write them 
with the thin Oracle driver is to use oracle.sql.Blob.getBinaryOutputStream() 
method. In order not to requre oracle classes in the classpath you may use 
reflection:
Method getBinaryOutputStream =
   Class.forName("oracle.sql.Blob").getMethod("getBinaryOutputStream", null);
OutputStream out = (OutputStream) getBinaryOutputStream.invoke(ps, null);
out.write(bytes);
out.close();

Regards,
 Oleg


On Friday 13 December 2002 23:39, Michael Mogley wrote:
> Forwarding message never seemed to have made it to the list.  My apologies
> if people receive it twice.
>
> ----- Original Message -----
> From: Michael Mogley
> To: OJB Developers List
> Sent: Friday, December 13, 2002 2:03 PM
> Subject: oracle lobs implemented
>
>
> However, in order to do so, I had to use the oracle api which extends
> Jdbc's Clob/Blob with needed methods to set the streams.  From my tests and
> research on the subject, PreparedStatement.setXXXStream methods error out
> for Oracle LOBs when the size of the data exceeds 4K.
>
> Basically, I am having to rely Oracle's driver classes to get things to
> work and I don't know what, if any, legal problems that would present for
> Ojb.
>
> I will continue to do some experimentation with the Jdbc interface to see
> if I can cut out the explicit calls to Oracle's API, but I don't know how
> possible this will be.  So far, all examples I've seen on the web solve the
> lob issue by going directly to the Oracle classes.
>
> Opinions?
>
> Michael


Mime
View raw message