Problem writing a BLOB

Hi,
- I have some problems to write a file in a BLOB field of an Oracle 9i database.
I don't want to use oracle.sql.BLOB class because I want my application to accept all kinds of database, so I want to use java.sql.Blob class.
1/ First I create a record in the database with an empty value for the BLOB field
2/ Then I retrieve the record just created
3/ I want to write in the BLOB field
There is the code for the third part, which occurs an exception :
java.sql.Blob myBlob = (java.sql.Blob) rs.getBlob(1);
File f = new File("c:\\myFile.txt");
FileInputStream fis = new FileInputStream(f);
OutputStream os = myBlob.setBinaryStream(0);
int length=-1;     
while((length=fis.read())!=-1) {     
   os.write(length);
}The exception occurs on the line : "OutputStream os = myBlob.setBinaryStream(0);"
There is the exception :
java.sql.SQLException: Fonction non prise en charge
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269)
at oracle.jdbc.dbaccess.DBError.throwUnsupportedFeatureSqlException(DBError.java:689)
at oracle.sql.BLOB.setBinaryStream(BLOB.java:1007)
Any idea ?
- another question I have.
When I retrieve my Blob from the database, I'm using the getBinaryStream() of the Blob class. This method returns always an OracleBlobInputStream, is there any way to retrieve a "standard" java object, and not a specific oracle object ?
Thanks in advance for your help,
Steve

Hello,
i would not get the OutputStream by calling the Method "OutputStream os = myBlob.setBinaryStream(0);".
I use the Method "blobDest.getBinaryOutputStream();"
Unfortunately, it's not possible to use the abstract JDBC driver interface to set a BLOB (unlimited size) into a oracle database, or rather i don't how to do it...
Here is the code which i use to insert a inputstream to a blob. Please note: In this example a string-type is used for the ID. This might be adapted in your solution....
public static void setBlob(Connection connection, InputStream inputStream, String tableName,
String columnName, String recordID) throws SQLException, IOException
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT ID, "+columnName+" FROM "+tableName+" WHERE ID='"+recordID+"' FOR UPDATE");
resultSet.next();
oracle.sql.BLOB blobDest = (oracle.sql.BLOB) ((OracleResultSet) resultSet).getBlob(2);
byte[] buffer = new byte[ blobDest.getBufferSize() ];
OutputStream outputStream = blobDest.getBinaryOutputStream();
int length = -1;
while ((length = inputStream.read(buffer)) != -1) {
outputStream.write(buffer,0,length);
outputStream.flush();
statement.close();
outputStream.close();
inputStream.close();
resultSet.close();
Hope it's help
best regards
sschoenig

Similar Messages

  • Problem writing image(Blob) to file

    Hi ,
    I'm trying to write image to file. The Image(26KB) is stored in database as BLOB. I have to change this to CLOB because when I try to write to file its writing all junk data. So I converted BLOB to CLOB then I try to write its giving me error.
    ORA-21560 :argument string is null, invalid, or out of range
    Cause: The argument is expecting a non-null, valid value but the argument value passed in is null, invalid, or out of range. Examples include when the LOB/FILE positional or size argument has a value outside the range 1 through (4GB - 1), or when an invalid open mode is used to open a file, etc.
    Action: Check your program and correct the caller of the routine to not pass a null, invalid or out-of-range argument value.
    The size of IMAGE after coverting to CLOB is 21102 bytes which is between the range.
    Here is how my code looks like:
    DECLARE
    f UTL_FILE.file_type;
    l_blob_len INTEGER;
    buffer VARCHAR2 (32767);
    buffer_size CONSTANT BINARY_INTEGER := 32767;
    amount BINARY_INTEGER;
    offset NUMBER (38);
    l_blob BLOB;
    l_clob CLOB := 'x';
    l_dest_offsset INTEGER := 1;
    l_src_offsset INTEGER := 1;
    l_lang_context INTEGER := DBMS_LOB.default_lang_ctx;
    l_warning INTEGER;
    BEGIN
    SELECT blobdata
    INTO l_blob
    FROM lob_table ip
    WHERE ip.id = 2;
    DBMS_LOB.converttoclob (dest_lob => l_clob,
    src_blob => l_blob,
    amount => DBMS_LOB.lobmaxsize,
    dest_offset => l_dest_offsset,
    src_offset => l_src_offsset,
    blob_csid => DBMS_LOB.default_csid,
    lang_context => l_lang_context,
    warning => l_warning);
    amount := buffer_size;
    offset := 1;
    f := UTL_FILE.fopen ('IN_FILE_LOC', 'something.doc', 'w');
    WHILE amount >= buffer_size
    LOOP
    DBMS_OUTPUT.put_line ('buffer_size');
    DBMS_LOB.READ (l_clob,
    amount,
    offset,
    buffer);
    UTL_FILE.PUT (f, buffer);
    UTL_FILE.FFLUSH (f);
    END LOOP;
    UTL_FILE.fclose (f);
    END;
    Please tell me what did I do wrong.

    Try this posts
    http://www.oracle-base.com/articles/9i/ExportBlob9i.php
    http://download.oracle.com/docs/cd/B10500_01/appdev.920/a96591/adl06faq.htm

  • Problems writing from BLOB to File with Thin-drivers

    I'm having problems when I'm trying to put a blob to a file
    using jdbc-thin drivers(8.1.5).
    It works perfectly well with the oci-drivers but not with thin.
    When I execute the same code with the thin-drivers I get:
    Error: java.io.IOException: ORA-21560: argument 2 is null,
    invalid, or out of range
    ORA-06512: at "SYS.DBMS_LOB", line 640
    ORA-06512: at line 1
    Please help me...
    /Stefan Fgersten
    lob_loc = ((OracleResultSet)rset).getBLOB(1);
    in = lob_loc.getBinaryStream();
    FileOutputStream file =
    new FileOutputStream("d:/dir/picture.jpg");
    int c;
    while ((c = in.read()) != -1)
    file.write(c);
    file.close();
    in.close();
    null

    Has anyone managed to find a solution (other than switching drivers) for this? I too am using the 8.1.5 thin driver on an 8.1.5 database and receive the same error. Please help!!
    Nkem
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Stefan Fgersten ([email protected]):
    I'm having problems when I'm trying to put a blob to a file
    using jdbc-thin drivers(8.1.5).
    It works perfectly well with the oci-drivers but not with thin.
    When I execute the same code with the thin-drivers I get:
    Error: java.io.IOException: ORA-21560: argument 2 is null,
    invalid, or out of range
    ORA-06512: at "SYS.DBMS_LOB", line 640
    ORA-06512: at line 1
    Please help me...
    /Stefan Fgersten
    lob_loc = ((OracleResultSet)rset).getBLOB(1);
    in = lob_loc.getBinaryStream();
    FileOutputStream file =
    new FileOutputStream("d:/dir/picture.jpg");
    int c;
    while ((c = in.read()) != -1)
    file.write(c);
    file.close();
    in.close();<HR></BLOCKQUOTE>
    null

  • Problems writing text on Photoshop CC

    I am having problems writing text on Photoshop CC - the image goes black.

    Windows 8?  Update your video card driver from the GPU maker's website. If you cannot update your driver (like on a locked laptop machine), then set the GPU drawing mode in Photoshop to "Basic" and relaunch the app.

  • Problem with displaying BLOB images on JSP page using a servlet

    hi. I have a big problem with displaying BLOB images using JSP. I have a servlet that connects to the oracle database, gets a BLOB image , reads it, and then displays it using a BinaryStream. The problem is , this works only when i directly call that servlet, that is http://localhost:8080/ImageServlet. It doesn't work when i try to use that servlet to display my image on my JSP page (my JSP page displays only a broken-image icon ) I tried several coding approaches with my servlet (used both Blob and BLOB objects), and they work just fine as long as i display images explicitly using only the servlet.
    Here's what i use : ORACLE 10g XE , Eclipse 3.1.2, Tomcat 5.5.16 , JDK 1.5
    here is one of my image servlet's working versions (the essential part of it) :
                   BLOB blob=null;
              rset=st.executeQuery("SELECT * FROM IMAGES WHERE ID=1");
              while (rset.next())
                   blob=((OracleResultSet)rset).getBLOB(2);
              response.reset();
              response.setContentType("image/jpeg");
              response.addHeader("Content-Disposition","filename=42.jpeg");
                    ServletOutputStream ostr=response.getOutputStream();
                   InputStream istr=blob.getBinaryStream(1L);
                    int size=blob.getBufferSize();
              int len=-1;
                    byte[] buff = new byte[size];
                         while ((len=istr.read( buff ))!=-1 ) {
                   ostr.write(buff,0,len);
             response.flushBuffer();
             ostr.close(); and my JSP page code :
    <img src="/ImageServlet" border="0"  > If you could just tell me what i'm doing wrong here , or if you could show me your own solutions to that problem , i would be very greatful ,cos i'm realy stuck here , and i'm rather pressed for time too. Hope someone can help.

    I turns out that it wasn't that big of a problem after all. All i had to do was to take the above code and place it into another JSP page instead of into a servlet like i did before. Then i just used that page as a source for my IMG tag in my first JSP. It works perfectly well. Why this doesn't work for servlets i still don't know, but it's not a problem form me anymore . Ofcourse if someone knows the answer , go ahead and write. I would still appriceatte it.
    here's the magic tag : <img src="ImageJSP.jsp" border="0"  > enjoy : )

  • Lost all photos on my iPhoto and get the ERROR WRITING TO DISK when trying to reload from Time Machine. iPhoto cannot import your photos because there was a problem writing to the volume containing your iPHOTO LIBRARY  . Looking for solution.

    Lost all photos on my iPhoto and get the ERROR WRITING TO DISK when trying to reload from Time Machine. iPhoto cannot import your photos because there was a problem writing to the volume containing your iPHOTO LIBRARY  . Looking for solution.

    Problems such as yours are sometimes caused by files that should belong to you but are locked or have wrong permissions. This procedure will check for such files. It makes no changes and therefore will not, in itself, solve your problem.
    First, empty the Trash, if possible.
    Triple-click anywhere in the line below on this page to select it, then copy the selected text to the Clipboard by pressing the key combination command-C:
    find ~ $TMPDIR.. \( -flags +sappnd,schg,uappnd,uchg -o ! -user $UID -o ! -perm -600 \) 2>&- | wc -l | pbcopy
    Launch the built-in Terminal application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid.
    Paste into the Terminal window (command-V). The command may take a noticeable amount of time to run. Wait for a new line ending in a dollar sign ($) to appear.
    The output of the command will be a number. It's automatically copied to the Clipboard. Please paste it into a reply.
    The Terminal window doesn't show the output. Please don't copy anything from there.

  • Director 12- can't create a windows projector - problem writing file error

    I am trying to create a windows projector of a project. when I get the following error - problem writing file - file name- Can't compress file that has been modified and not saved. The file has not been modified and has been saved. Any help would be great.

    Hi.
    You say you have tried publishing to a new empty folder.  From the video I can see that the folder has table1.app in there (25 secs in) which is a Mac projector that has been published.
    Yet you have Windows Projector checkbox ticked at the start of the video.
    I publish Mac and Windows projectors to entirely seperate folders as a matter of practice.
    I call the folders "Published" and "PublishedMac" and that is where the respective projectors for each piece of software lives.
    Perhaps there is some mix up between Mac and Windows publishing that is going on because
    you are publishing both to the same folder?
    Hope this helps.
    Richie

  • Cannot import photos from camera, "problem writing to the volume"

    I recently upgraded to iPhoto 09 from iPhoto 5. While everything seemed ok in terms of Faces and Places and Events etc, today I was trying to import some photos from my camera and suddenly iPhoto 09 gave an error *"iPhoto cannot import your photos because there was a problem writing to the volume containing your iPhoto library"* somewhere mid-way through the import. I don't understand why my own internal HD would have a problem writing to.
    Luckily, I had made a bootable backup before upgrading to iLife 09, so I just booted from that external FireWire disk, opened iPhoto 5 and as usual, it imported all the photos without any issues. But I do not want to go back and forth just for importing the photos. So, Apple, please update the iPhoto 09 with necessary bug fixes.
    Has anyone else experienced this issue ? any solutions ?
    Thanks.

    Your stated problem
    I was trying to import some photos from my camera and suddenly iPhoto 09 gave an error "iPhoto cannot import your photos because there was a problem writing to the volume containing your iPhoto library" somewhere mid-way through the import.
    As I stated I have NOT seen this problem before and it is clearly a specific problem with your system not an iPhoto bug
    Then you are not watching enough. There are several reports here itself :
    http://discussions.apple.com/thread.jspa?messageID=8971388
    Issue was user had their iPhoto library on a FAT 32 formated disk - nothing at all like your personal problem
    http://discussions.apple.com/thread.jspa?threadID=1907134&tstart=0
    User was short of disk space - one of the questions I ask you since it can cause similar problems and can corrupt your library
    http://discussions.apple.com/thread.jspa?threadID=1885964&tstart=0
    Even with all of the thread jacks nothing in this long thread is like yours - these are mostly corrupted libraries and are solved by rebuilding
    http://forums.appleinsider.com/showthread.php?p=1372496
    Not on a forum that I follow - but appears to again be a FAT32 formated disk - nothing like your issue
    SInce you are mostly interested in arguing and insulting people and not in solving your problem - if you even have one e - I choose not to deal with peole with your attitude
    LN

  • Problem writing xmltab to application server

    Hi experts ,
    I have problem writing a xmltab to appliction , the file is written to application serever but with some junk at very last record and when I open it in browser I have an error
    "An invalid character was found in text content. Error processing resource 'file:///" in the end of document.
    is that due to the line break ,
    any suggestion on resolution will be great .
    below is the code .
    Thanks
    vinay

    Use the function module
    ARCHIVFILE_SERVER_TO_CLIENT
    Pass the values: as download file and destination in the respective fields.
    File to be downloaded in :(Pass the exact file name)
    PATH :                          
    SDEC01\SAPMNT\INT\HR\OUT\FMLA-20080205-0728
    and
    Destination to download the file in:
    TARGETPATH                      C:\DOCUMENTS AND SETTINGS\JILFEM\MY DOCUMENTS\FMLA-20080205-0728
    Regards,
    Jilly

  • HP Pavillion dv6-1245dx problems writing to MicroSDHC card - errors

    I've purcahsed two different brands of MicroSDHC 32GB cards. They will allow me to write 1-2GB of info before giving me an error code: 0x80070052. I was using Windows 7 and read that this was an issue that was going to be resolved in Windows 8, so I installed Windows 8 on my laptop (It's legitimate through Microsoft's MSDN program).
    I went looking for product specifications for my laptop on the HP site and it just gives this vague answer: 5-in-1 integrated Digital Media Reader for Secure Digital cards, MultiMedia cards, Memory Stick, Memory Stick Pro, or xD Picture cards.
    It doesn't specify SD, MicroSD, MicroSDHC or any variation. I am inclined to believe that the laptop doesn't support cards as large as 32GB. The largest card I've ever tried before this was an standard size 8GB SDHC, so at least I know it will handle the SDHC part. However, I have had issues with 32GB USB drives as well, where the drive gets half full and then starts having problems writing (no error codes though).
    I'd like to know if MicroSDHC cards as large as 32GB are or aren't supported before I commit to purchasing a third card. I've tried multiple adapters as well, so I know it's not 1) Me trying to stick a tiny card in a large hole, 2) poor contact between the adapter and the laptop, or 3) poor contact between the card and the adapter.
    Thank you.

    card readers are prone to problems with the internal contacts, particularly multi-card readers. If you get a card inserted a little  bit wrong it can cause it to go out. HP should warrant the problem but if you can't get relief, the expresscard multi-readers are cheap and work well. My laptop has no built in card reader so that is what I use.

  • Problems writing BLOB data into O8i (ADO and AppendChunk)

    We have a table where you want to store bianry data (BLOBs). I
    have used the LONG RAW datatype to store this information. Here
    is the code for the table:
    CREATE TABLE "CONTENTBLOBTABLE" (
    DIGEST NVARCHAR2(40) NOT NULL,
    BLOB LONG RAW,
    CHECK (DIGEST IS NOT NULL),
    PRIMARY KEY (DIGEST)
    Then we try to update this table with ADO 2.6 on a Windows 200
    machine with Oracle ODBC driver. Here is the relevant code
    snippet:
    // set the value of the field
    pRs->AddNew();
    pRs->Fields->GetItem("DIGEST")->PutValue(strDigest);
    pRs->Fields->GetItem("BLOB")->AppendChunk(varBLOB);
    if(!pRs->Update())
    C_LOG_CRITICAL(L"CC_CS_DAL::WriteBLOB - pRs->Update failed");
    *error = C_CS_CBT_ERROR;
    pRs->CancelUpdate();
    pRs->Close();
    m_pConn->Close();
    m_spObjectContext->SetAbort();
    return S_FALSE;
    OK, NO error occurs: no exception, HRESULT return values are all
    OK, method completes.
    BUT: there is no data in the table!?!?! When querying the exact
    same table we get an empty result!
    Any ideas please?
    Thanks,
    Christian

    Did you even get a reply to this message?

  • Writing multiple BLOB (PDF) records into one PDF file

    I currently have a procedure that writes an individual BLOB pdf row and outputs it to a PDF file, however I would like to write multiple BLOB rows into one PDF.
    Oracle version:10g R2.
    Does anyone know whether it is possible to do this?
    Here is my code, I was hoping to use a cursor FOR LOOP to read the BLOB records. The BLOB records do successfully load into a new PDF file, however when you open it the PDF only the first page is viewable. I am assuming the issue is to do with the PDF format rather than writing the data out to the file. I.e. the Page numbers etc.., incorrect formatting of the PDF?
    declare
    -- Test statements here
    b BLOB;
    amount BINARY_INTEGER;
    file_handle UTL_FILE.FILE_TYPE;
    l_pos INTEGER := 1;
    l_blob_len INTEGER;
    l_buffer RAW (32767);
    l_amount BINARY_INTEGER := 32767;
    file_name_ VARCHAR2(200);
    pattern_id_ VARCHAR2(200) := '5555555';
    pdf_path_ VARCHAR2(200) := 'PDF_OUT';
    cursor get_blob_recs is
    select pdf from mds_remote_pdf_tmp;
    BEGIN
    file_name_ := to_char(pattern_id_)||'.PDF';
    file_handle := UTL_FILE.FOPEN(pdf_path_,file_name_,'wb');
    FOR rec_ IN get_blob_recs LOOP
    l_blob_len := DBMS_LOB.getlength (rec_.pdf);
    l_pos := 1;
    WHILE l_pos < l_blob_len
    LOOP
    DBMS_LOB.READ (rec_.pdf, l_amount, l_pos, l_buffer);
    UTL_FILE.put_raw (file_handle, l_buffer, FALSE);
    l_pos := l_pos + l_amount;
    END LOOP;
    END LOOP;
    UTL_FILE.FCLOSE(file_handle);
    end;
    Any advice would be greatly appreciated.
    Regards,
    David.

    I guessed there was more to a PDF file format than just amending the BLOB objects!. I think I'll have to create a function with an IN param containing the PDF file list, and invoke a Java class to merge the PDFs in the OS.
    My requirement is to record the history of when a hand written form was completed. E.g. a user might complete half a document one day, and the rest of the document another day, therefore I want one PDF with two pages of the same form at different stages of completion. These forms are currently being created as two separate PDFs, and the problem is I am restricted to displaying only one PDF!
    Thank you.
    David.
    Edited by: david.massey on Jan 26, 2011 8:16 AM

  • Problem writing to file

    I'm working on a program that asks for the users name. after that its supposed to pull the current date and time and print that into a file along with the users name.
    my problem is when i open the .txt file i get several characters i dont recogize and then my name at the end.
    Thanks for the help:
    public class CIS314Exam1MarkWellsFrame
    private ObjectOutputStream output;
    public void openFile()
    try
    output = new ObjectOutputStream(new FileOutputStream("guestlog.txt"));
    catch(IOException ioException)
    JOptionPane.showMessageDialog(null, "You do not have access to this file");
    System.exit(1);
    public void insertName()
    try
    Date today = new Date();
    //utput.writeObject(today);
    //String name = JOptionPane.showInputDialog("Enter Name");
    String name = "Mark";
    output.writeObject(name);
    catch(IOException ioException)
    JOptionPane.showMessageDialog(null, "Error writing to file");
    return;
    public void closeFile()
    try
    if(output !=null)
    output.close();
    catch(IOException ioException)
    JOptionPane.showMessageDialog(null, "Error Closing File");
    System.exit(1);
    System.exit(0);
    }

    This isnt the correct forum for this question. Use tags when posting code.  Post the contents of the .txt file and what unexpected characters you are getting.                                                                                                                                                                                                                                                                                                                                           

  • Problem writing meta data changes in xmp in spite of enabled settings

    Dear Adobe Community
    After struggling with this for two full days and one night, you are my last hope before I give up and migrate to Aperture instead.
    I am having problems with Lightroom 5 writing meta data changes into xmp and including development settings in JPEG, inspite of having ticked all three boxed in catalog settings.
    In spite of having checked all boxes, Lightroom refused to actually perform the actions. I allowed the save action to take a lot longer than the saving indicator showed was needed, but regardless of this no edits made in the photo would be visible outside Lightroom. I also tried unticking and ticking and restarting my compute.
    Therefore, I uninstalled the program and the reinstalled it again (the trial version both times). I added about 5000 images to Lightroom (i.e. referenced). After having made a couple of changes for one photo in development settings, I tried closing the program. However, then this message was then displayed:
    I left the program open and running for about 5-5 hours, then tried closing the program, but the message still came up so I closed the program and restarted the computer. I tried making changes to another photo, saving and then closing and the same message comes up. The program also becomes unresponsive, and of course still no meta data has been saved to the photo, i.e. when opening it outside Lightroom, the edits of the photos is not shown.
    What do do? I would greatly appreciate any insights, since I have now completely hit the wall.
    Oh yes, that´s right:
    What version of Lightroom? Include the minor version number (e.g., Lighroom 4 with the 4.1 update).
    Lightroom 5.3
    Have you installed the recent updates? (If not, you should. They fix a lot of problems.)
    I installed the program two days ago and then for the second time today.
    What operating system? This should include specific minor version numbers, like "Mac OSX v10.6.8"---not just "Mac".
    Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
    What kind(s) of image file(s)? When talking about camera raw files, include the model of camera.
    JPEG
    If you are getting error message(s), what is the full text of the error message(s)?
    Please see screen dumps above
    What were you doing when the problem occurred?
    Trying to save metadata + trying to open images that it seemed I had saved meta data to
    Has this ever worked before?
    No
    What other software are you running?
    For some time Chrome, Firefox, Itunes. Then I closed all other software.
    Tell us about your computer hardware. How much RAM is installed?  How much free space is on your system (C:) drive?
    4 GB 1333 MHz DDR3
    Has this ever worked before?  If so, do you recall any changes you made to Lightroom, such as adding Plug-ins, presets, etc.?  Did you make any changes to your system, such as updating hardware, printers or drivers, or installing/uninstalling any programs?
    No, the problems have been there all the time.

    AnnaK wrote:
    Hi Rob
    I think you succeeded in partly convincing me. : ) I think I will go for a non-destrucitve program like LR when I am back in Sweden, but will opt for a destructive one for now.  Unfortuntately, I have an Olypmus- so judging from your comment NX2 might not be for me.
    Hi AnnaK (see below).
    AnnaK wrote:
    My old snaps are JPEG, but I recently upgraded to an Olympus e-pl5 and will notw (edited by RC) start shooting RAW.
    Note: I edited your statement: I assume you meant now instead of not.
    If you start shooting raw, then you're gonna need a raw processor, regardless of what the next step in the process will be. And there are none better for this purpose than Lightroom, in my opinion. As has been said, you can export those back to Lightroom as jpeg then delete the raws, if storage is a major issue, or convert to Lossy DNG. Both of those options assume you're willing to adopt a non-destructive workflow, from there on out anyway (not an absolute requirement, but probably makes the most sense). It's generally a bad idea to edit a jpeg then resave it as a jpeg, because quality gets progressively worse every time you do that. Still, it's what I (and everybody else) did for years before Lightroom, and if you want to adopt such a workflow then yeah: you'll need a destructive editor that you like (or as I said, you can continue to use Lightroom in that fashion, by exporting new jpegs and deleting originals - really? that's how you want to go???). Reminder: NX2 works great on jpegs, and so is still very much a candidate in my mind - my biggest reservation in recommending it is uncertainty of it's future (it's kinda in limbo right now).
    AnnaK wrote:
    Rob Cole wrote:
    There is a plugin which will automatically delete originals upon export, but relying on plugins makes for additional complication too.
    Which plugin is this?
    Exportant (the option is invisible by default, but can be made visible by editing a text config file). To be clear: I do not recommend using Exportant for this purpose until after you've got everything else setup and functioning, and even then it would be worth reconsidering.
    AnnaK wrote:
    Rob Cole wrote:
    What I do is auto-publish to all consumption destinations after each round of edits, but that takes more space.
    How do you do this?
    Via Publish Services.
    PS - I also use features in 'Publish Service Assistant' and 'Change Manager' plugins (for complete automation), but most people just select publish collections and/or sets and click 'Publish' - if you only have a few collections/services it's convenient enough.
    AnnaK wrote:
    Would you happen to have any tips on which plugins I may want to use together with Photoshop Elements?
    No - sorry, maybe somebody else does.
    Did I get 'em all?
    Rob

  • Writing to BLOB with getBinaryOutputStream

    I'm trying to insert a BLOB and have problems with a variety of the methods listed in documentation.
    1) The method that is in the Oracle examples, oracle.sql.BLOB.getBinaryOutputStream(), give me a warning that it is deprecated.
    2) In other Oracle documentation, getBinaryOutputStream(long) is specified, but that doesn't exist in my version of oracle.sql.BLOB.
    3) Yet other documentation says to use the JDBC 3.0 standard call, which is setBinaryStream(long). However, I get this error when running it: java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long)
    I don't want to use the deprecated method, but that's the only one that works. Any ideas?
    Using 10g driver with an 8i database.
    thanks

    I’m not sure how to use PreparedStatement.setBlob(Blob). Seems like the only way to create a BLOB is to SELECT it, and then you still need to call BLOB.setXXX. I tried setBytes(..) but get the same AbstractMethodError as with setBinaryStream(..)
    Here’s the stacktrace from JDev, not sure it has what you're looking for. In this scenario, I use a PreparedStatement to create a blob locator using this:
    String CREATE_STATEMENT = "INSERT INTO IWR_FILE " +
    "(SA_FILE, SA_IWR, FILE_NAME, FILE_BLOB) VALUES " +
    "( ?, ?, ?, empty_blob())";
    I then select that record and try to write the blob using:
    (imported oracle.sql.BLOB)
    ResultSet blobRS = blobPS.executeQuery();
    BLOB blob = (BLOB) blobRS.getBlob(1);
    OutputStream blobOUT = blob.setBinaryStream(1L);
    Tried casting the ResultSet to an OracleResultSet, but still got the error.
    com.evermind.server.rmi.OrionRemoteException: Transaction was rolled back: java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long)      at IWRFacade_StatelessSessionBeanWrapper0.setDTOList(IWRFacade_StatelessSessionBeanWrapper0.java:621)      at iwr.ejb.beans.Tester.testFileDAO(Tester.java:117)      at iwr.ejb.beans.Tester.main(Tester.java:47)      at mypackage7.InitiatorServlet.init(InitiatorServlet.java:27)      at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2094)      at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4523)      at com.evermind.server.http.HttpApplication.getRequestDispatcher(HttpApplication.java:2413) 04/08/30 09:49:04 com.evermind.server.rmi.OrionRemoteException: Transaction was rolled back: java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long); nested exception is:
         java.rmi.RemoteException: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long); nested exception is:
         java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long)      at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:640)      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)      at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)      at java.lang.Thread.run(Thread.java:534)      Nested exception is: java.rmi.RemoteException: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long); nested exception is:
         java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long)      at com.evermind.server.ejb.EJBUtils.makeException(EJBUtils.java:941)      at IWRFacade_StatelessSessionBeanWrapper0.setDTOList(IWRFacade_StatelessSessionBeanWrapper0.java:621)      at iwr.ejb.beans.Tester.testFileDAO(Tester.java:117)      at iwr.ejb.beans.Tester.main(Tester.java:47)      at mypackage7.InitiatorServlet.init(InitiatorServlet.java:27)      at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2094)      at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4523)      at com.evermind.server.http.HttpApplication.getRequestDispatcher(HttpApplication.java:2413)      at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:640)      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)      at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)      at java.lang.Thread.run(Thread.java:534) Caused by: java.lang.AbstractMethodError: java.io.OutputStream oracle.sql.BLOB.setBinaryStream(long)      at iwr.ejb.dao.FileDAO.getInsertPS(FileDAO.java:244)      at iwr.ejb.dao.FileDAO.setDTO(FileDAO.java:90)      at iwr.ejb.beans.IWRFacadeBean.setDTOList(IWRFacadeBean.java:102)      at IWRFacade_StatelessSessionBeanWrapper0.setDTOList(IWRFacade_StatelessSessionBeanWrapper0.java:564)      ... 11 more

Maybe you are looking for

  • Recurring kernel panics, Macbook Pro 13" mid-2010

    The last month or so I have noticed that my computer gets very warm and the fan spins like crazy at times, mostly when I stream HD-video or visit sites with many GIFs running at the same time. Lately (last week or so) I have also been having recurrin

  • Problem in Integration Directory after transport

    Guys, we did a SLD transport (only LD objects), with DEV and PRD groups. It had some error messages because the SWCV's from the Dev XI were not created into PRD XI, but apparently, despite the errors, the products and SWCV's were created. After that,

  • Windows vista installed,can't install Mac OS XLeopard

    I have a macbook and am trying to install a clean version of leopard. this macbook had vista installed on it. I have tried to do a clean install of mac leopard.The message comes up" it cannot be installed on this computer. As far as I know there is n

  • (on the web) can preview be removed/stopped until the message opened?

    I'm running 10.5 and "the cloud" will not supress the preview portion/display so I can quickly move through my mail! ...Especially when I have to go to the library to access mail - MS-esplorer is very slow to respond/access the cloud and the cloud fr

  • How to hide an account?

    Morning. We in the office want to use iCal to manage our dates. Our assistant has iCal on her iMac and subscribed all of our MobileMe calendar accounts. Some of us use more than one calendar. So at the assistants iCal are a lot of calendars displayed