読者です 読者をやめる 読者になる 読者になる

DbUnit2.4.1を使用してみる

DbUnit2.4.1をちょっとだけ使ってみました。
MySQL5.0に繋ぎにいく既に存在するテストケースを試してみましたが、
POI3.2の仕様なんだかよくわかりませんが、DBの情報をExcelに書き込む時、
Timestamp型のデータが、数値になっちゃいます。


Excelのセルに
2010-01-01 01:23:45.0
って入力すると
40179.05815972222
になっちゃうアレです。


で、そのExcelのデータをDBに反映させようとすると、
Caused by: org.dbunit.dataset.datatype.TypeCastException: Unable to typecast value <40179.05815972222> of type to TIMESTAMP
とエラーが出てしまいます。


どうも、2.4系からの
org.dbunit.dataset.excel.XlsDataSetWriter
がDate系のインスタンスを数値型で書き出しているからのようです。


えー、これってテストしたのかな?
ちなみに、セルのプロパティを文字列にしたTimestamp型の情報は、ちゃんと入ります。


2.4系はもう少し待った方がいいですね。