I have a Java class that writes something to an Oracle BLOB. With a method like this (I fill the blob and return it to the caller): To call this method, I get a connection to Oracle, call a stored procedure which returns an empty blob (which I then pass to the fillBlob() method): The stored procedure just returns a temporary blob and contains one line: This works fine. The problem starts when I put that class in Oracle as a Java source, and call the class from an Oracle procedure (a requirement): I am getting 'ORA-24813 cannot send or receive an unsupported LOB' error. If my Java class returns something else (or just null), I don't get an error. So, I think the error is because I return the blob I have received as an argument. What can I do to fix the error, or how else can I achieve my goal?
P.S. I've tried this on two different Oracle databases (10.2.0.1.0 and 10.2.0.3.0) [ July 30, 2007: Message edited by: Andris Jekabsons ]
Never attribute to malice that which is easily explained by incompetence.<br />SCJP (1.5)
Joined: Jan 20, 2004
Thanks for the response. It looks like I was using the correct methods, but the problem has disappeared now. Just as it "mysteriously" appeared when a previously functioning Java code was moved to Oracle (btw, a clob wasn't creating any problems, only a blob), it has "mysteriously" disappeared. I changed some code in the method, and now it works - even though I didn't change how I write data to the blob. Go figure!
subject: unsupported LOB (calling Java from Oracle)