Masalah ini dilaporkan di HHH-1483
dan HHH-3892
. Singkatnya, Hibernate tidak tahu, bagaimana memetakan LONGVARCHAR
kolom yang dikembalikan oleh kueri asli.
Masalah ini diperbaiki di Hibernate 3.5.0+. Untuk versi sebelumnya, solusinya adalah dengan memperluas MysqlDialect
untuk mendaftarkan Type
Hibernate yang benar untuk LONGVARCHAR
:
import java.sql.Types;
import org.hibernate.Hibernate;
public class MyMySQL5Dialect extends org.hibernate.dialect.MySQL5Dialect {
public MyMySQL5Dialect() {
super();
// register additional hibernate types for default use in scalar sqlquery type auto detection
registerHibernateType(Types.LONGVARCHAR, Hibernate.TEXT.getName());
}
}