[Seasar-user:18225] Re: [Kuina+S2TopLink] BLOBデータの読み込みが失敗する

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2009年 8月 7日 (金) 20:00:00 JST


小林 (koichik) です.

Date:    Fri, 07 Aug 2009 18:11:02 +0900
From:    新田 雅浩 <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:18223] [Kuina+S2TopLink] BLOBデータの読み込みが失敗する

> [TopLink Warning]: 2009.08.07 05:09:20.318--UnitOfWork(29187880)--Thread(Thread[main,5,main])--Exception [TOPLINK-3001] (Oracle TopLink Essentials - 2.0.1 (Build 09d (12/06/2007))): oracle.toplink.essentials.exceptions.ConversionException
> Exception Description: The object [[E-MAIL ADDRESS DELETED]], of class [class java.io.ByteArrayInputStream], could not be converted to [class [B].
> 2009-08-07 17:09:20,335 [main] DEBUG org.seasar.framework.aop.interceptors.TraceInterceptor - END jp.co.bitfarm.test.dao.AttachFileDao#find(1) Throwable:Exception [TOPLINK-3001] (Oracle TopLink Essentials - 2.0.1 (Build 09d (12/06/2007))): oracle.toplink.essentials.exceptions.ConversionException
> Exception Description: The object [[E-MAIL ADDRESS DELETED]], of class [class java.io.ByteArrayInputStream], could not be converted to [class [B].
> 2009-08-07 17:09:44,767 [main] DEBUG org.seasar.extension.dbcp.impl.ConnectionWrapperImpl - 物理的なコネクションを閉じました
> ------------------------------------------------------------------------
> 
> SQLは発行されていますが、java.io.ByteArrayInputStreamでエラーが出ている
> ので、BLOBの読み込みがうまくいっていないのではないかと思います。

ログを見る限りだと TopLink が byte[] への変換を
してくれてないように見えます.
変換元の ByteArrayInputStream が普通のオブジェクトの
ように扱われているので,TopLink は BLOB だと認識
していないのかもしれません.

persistence.xml で Dialect (TopLink では Platform) が
正しく H2 のものになってるかとか,H2 や TopLink の
バージョンを更新してみるなどしてはいかがでしょうか.


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>



Seasar-user メーリングリストの案内