Storing a dynamically created PDF file in a blob field

From: Tony (bones_at_sprintmail.com)
Date: 08/02/04

  • Next message: Murray: "Re: Storing a dynamically created PDF file in a blob field"
    Date: Sun, 01 Aug 2004 22:52:16 GMT
    
    

    Hi,
    I have dynamically created a PDF document in memory as a FileOutputStream
    Now I have to get it into a DB2 table, storing it as a BLOB. The table has a
    document id,
    document name, some date fields and this BLOB column that stores PDF Files.
    Until now, the PDF files were read off of a disk drive. The code used was:

    byte[] fileAsBytes = (byte[]) adminDocEvent.getFile();

    which returns an object.
    then:
    "INSERT INTO WPWDB.DOC_DOCUMENT ("
    + "DOC_SUB_CAT_ID,"
    + "DOC_DOC_NM_TXT,"
    + "DOC_DOC_DESCN_TXT,"
    + "DOC_ACTIVE_TXT,"
    + "DOC_DOC_LNK_TXT,"
    + "DOC_DOC_MIME_TYP,"
    + "MODIFY_USUS_ID,"
    + "MODIFY_DT_TM)"
    + " VALUES (?,?,?,?,?,?,?,CURRENT TIMESTAMP)";

    connection = getConnection();

    pstmt = connection.prepareStatement(query);
    pstmt.setInt(1, subCatId);
    pstmt.setString(2, docName);
    pstmt.setString(3, docDescription);
    pstmt.setString(4, "Y");
    ==> pstmt.setBytes(5, fileasarray);
    pstmt.setString(6, mimeType);
    pstmt.setString(7, modfiedUserID);
    pstmt.executeUpdate();

    This is fine, if the pdf file exists as a file on a disk.
    For my issue (loading a pdf file from memory) I use the following:

    FileOutputStream fos = new FileOutputStream(docName);
    private PdfWriter docWriter = null;
    docWriter=PdfWriter.getInstance(pdfDocument, fos);
    I then create the pdfDocument in memory using iText classes.
    Then I try to prepare the file for the above sql stmt.

    file = (Object) fos;
    AdminDocDAO adminDocDAO = new AdminDocDAO();
    if (adminDocDAO.addDoc(subCatId,docName,docDescription,fileAsBytes,
    mimeType,modifiedUserID))

    I get a casting exeception at: file = (Object) fos;

    So my question is can anyone think of another approach to getting a
    FileOutputStream into a format loadable in SQL using DB2???????
    Thanks to any and all who can.


  • Next message: Murray: "Re: Storing a dynamically created PDF file in a blob field"

    Relevant Pages