Dynamically Out put a image in Jsp

Поиск
Список
Период
Сортировка
От Dilan
Тема Dynamically Out put a image in Jsp
Дата
Msg-id 200505270137.j4R1bWMh029971@internal.waterfind.com.au
обсуждение исходный текст
Ответ на Re: BIGINT <-> java.lang.String auto cast  (Dave Cramer <pg@fastcrypt.com>)
Список pgsql-jdbc
Hello,

I'm using psql 8.0.3-RH,
And using hibernate version 2.0.3 mapping,

I'm using hibernate to connect postgresql via java, and I'm trying to save a
image as a binary file,


When I upload, use this part of the class:




UploadTransferForm uForm = (UploadTransferForm) form; int
size=uForm.getFileUpload().getFileSize();
byte[] byteArr = new byte[size];

ActionErrors errors = new ActionErrors();

try {
    //Create an input stream to read the uploaded file.
    ByteArrayInputStream bytein = new
ByteArrayInputStream(uForm.getFileUpload().getFileData());
    // Load the input stream into the byte Array.
    bytein.read(byteArr);
    // Close the input stream.
    bytein.close();
    // Load the byte[] into the content field.
    uForm.setContent(byteArr);
} catch (Exception e) {
        logger.error("Error adding image to the database", e);
}

Session sess = null;

AuthorityApprovalForms af = new AuthorityApprovalForms();

try {
        sess = Waterfind.getSessionFactory().openSession();
} catch (net.sf.hibernate.HibernateException e) {
        logger.error("Error opening hibernate session", e); }
   try {
        af.setImg(byteArr);
        sess.save(af);
        sess.flush();

} catch (Exception e) {




--

when i diplaying it





try {

    AuthorityApprovalForms af = new AuthorityApprovalForms();
    Long formId = new Long(request.getParameter("formId"));
    af = AuthorityApprovalForms.getFormById(formId);

    byte pic[] = af.getImg();

    OutputStream out = response.getOutputStream();
    out.write( pic );

     } catch (IOException e) {
             logger.error("Error opening file region", e);
     }
}



I have save the data into the database via hibernate-mapping as binary





<hibernate-mapping>

    <class name="com.admin.AuthorityApprovalForms"
table="AUTHORITY_APPROVAL_FORMS">
        <id name="id" type="long">
            <generator class="native"/>
        </id>
    <many-to-one name="OfferId" class="com.admin.core.Offer">
            <column name="offer_id"/>
        </many-to-one>
    <property name="name" type="string"/>
    <property name="type" type="string"/>
    <property name="img" type="binary"/>

    </class>
</hibernate-mapping>



in JSP


<img src="trasnferImage.html?formId=<%= String.valueOf(formId) %>"
align="absmiddle" border="0">



However, when jpg is displaying, it appear to be corrupted, with green and
black back ground (similar to missing layers).

I Think this is something to do with setting up the content type? can some
one help me with how to set it up?

I even check byte compression between before and after saving the data, and
no different between that either, can some one please help regards that or
give me some comments regards the problem.

I even upgrade the database version,

All I want to do is, upload the jpg files to the database then later display
it.

Regards



В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Oliver Jowett
Дата:
Сообщение: Re: BIGINT <-> java.lang.String auto cast
Следующее
От: Habib Seifzadeh
Дата:
Сообщение: CMP Entity bean and Primary key