[Seasar-user:17551] Re: [S2JDBC] 時制を指定したプロパティを検索条件とした場合の動作について

Yasuo Higa [E-MAIL ADDRESS DELETED]
2009年 5月 29日 (金) 15:58:06 JST


ひがです。

> はじめまして、梅田と申します。
> 
>  DBのアクセスに、S2JDBCを使用させて頂いています。
> 
>  現在、seasar2.4.30を使用しており、2.4.37にアップしようとしましたが、
> DB検索処理において、時制を指定したプロパティを検索条件に
> 含めた場合に、想定どおり動作しなくなってしまったため、質問
> させて頂きました。
> 
>  検索対象のエンティティには、時制「@Temporal(TemporalType.TIME)」
> を指定したプロパティ「time」があり、このプロパティを検索条件として
> 検索を行うと、すべて「00:00:00」で検索されてしまいます。下記例では、
> 「time」プロパティが「10:00:00」のデータを検索したいのですが、
> 「00:00:00」として検索されてしまいます。
> seasar2.4.30まではうまく動作していました。
> 
これは、S2BeanUtilsのバグですね。

とりあえずの対応策としては、
Beans.createAndCopyするときに、timeConverter()を
明示的に指定するか、java.util.Dateのかわりに
java.sql.Timeを使うようにしてください。

ただ、これもあんまりなので、近いうちに新しいバージョンを
出したいと思います。

ご迷惑をおかけして申し訳ありませんが、
よろしくお願いします。


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