[seasar-s2dao-dev:317] Re: BLOB型を引数にもつストアドが動かない
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2007年 7月 12日 (木) 05:22:57 JST
米林です。
----- Original Message -----
From: "Toshihiro Nakamura" <[E-MAIL ADDRESS DELETED]>
Sent: Wednesday, July 11, 2007 11:45 PM
> 中村(taedium)です。
>
> Oracle10.2でProcedureアノテーションを使った場合に起きます。
> S2Daoのバージョンは1.0.44です。
知りませんでした、勉強になります。
> INパラメータとOUTパラメータを持ち両方がBLOB型である
> ストアドで試しています。
>
> 原因は、AbstractBasicProcedureHandler#initTypes()の処理で、
> BLOB型のパラメータに対してDBのメタデータがTypes.OTHERを
> 返しているからのようです。
>
> # 正確に言うと、後続の処理でTypes.OTHERがINパラメータや
> # OUTパラメータの型としてCallableStatementに設定されて
> # しまうのが問題。
>
> 対策として、JDBCのSQL型の取得にメタデータを使わない
> というのはどうでしょう。
+1です。
> @Procedureが指定されたメソッドの引数の型から
> S2JDBCのValueTypeを求めて
> CallableStatementのバインドや値の取得をValueType
> に任せてしまうといいんじゃないかと思います。
ちゃんとソース見てないのですが、良いと思います。
---
米林 正明
[E-MAIL ADDRESS DELETED]
seasar-s2dao-dev メーリングリストの案内