テーブルを作成するために、Hibernate でメモリ内 Derby データベースを使用します。私のテストでは、dbunit を使用して、テスト データでデータベースを準備します。
db.driverClass=org.apache.derby.jdbc.EmbeddedDriver
db.url=jdbc:derby:memory:myDb;create=true
hibernate.dialect=org.hibernate.dialect.DerbyDialect
hibernate.hbm2ddl.auto=create-drop
Hibernate は、ブール値を格納するために smallint 列タイプを作成するようです。しかし、dbunit はこの値を変換できません。
Caused by: org.dbunit.dataset.datatype.TypeCastException: Unable to typecast value <true> of type <java.lang.String> to SMALLINT
Hibernate にブール列を作成させる (ダービーで利用可能な場合)、または dbunit に Java ブール値を smallint 列に書き込むようにするアイデアはありますか?
これは同じ問題を説明していますが、Derby の DataTypeFactory 実装はないようです。http://old.nabble.com/Data-type-factory-for-Derby-database.-td25996976.html