hibernate hbm2ddl логический столбец typeCastException в dbunit - PullRequest
0 голосов
/ 06 декабря 2010

Я использую базу данных Derby в памяти с Hibernate для создания таблиц.Мои тесты используют 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 создать логический столбец (если он доступен в derby) или заставить dbunit записать логический java в столбец smallint?объясняет ту же проблему, но, кажется, нет реализации DataTypeFactory для Derby.http://old.nabble.com/Data-type-factory-for-Derby-database.-td25996976.html

1 Ответ

0 голосов
/ 06 декабря 2010

Я не верю, что настоящий тип данных boolean в настоящее время доступен в Derby, хотя в настоящее время ведется работа по его предоставлению, см .: https://issues.apache.org/jira/browse/DERBY-4716. Релиз Derby, поддерживающий эту работу, ожидается "скоро".

...