play.exceptions.JavaExecutionException:org.hibernate.MappingException:没有JDBC类型的Dialect映射

时间:2014-10-22 13:19:06

标签: sql hibernate jpa playframework

我有一个播放框架应用程序[版本1.2.7]。 当我尝试在非jpa实体表单中获取数据时,我得到了这个异常

play.exceptions.JavaExecutionException: org.hibernate.MappingException: No Dialect mapping for JDBC type: 16
	at play.mvc.ActionInvoker.invoke(ActionInvoker.java:237)
	at Invocation.HTTP Request(Play!)
Caused by: javax.persistence.PersistenceException: org.hibernate.MappingException: No Dialect mapping for JDBC type: 16
	at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1389)
	at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1317)
	at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:255)

我的代码如下

 List lst = JPA.em().createNativeQuery(myQuery)
                .setParameter("p", searchPhrase)
                .getResultList();

我想使用原生查询并获取所有提取所有数据,但我不想仅限于将其作为Jpa实体。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:3)

如果我没错,那么JDBC类型16是BOOLEAN(看java.sql.Types)。您的问题可能是由于使用了错误的hibernate.dialect引起的,该错误的hibernate.dialect不知道您尝试选择的某个表中出现的BOOLEAN类型。查看hibernate.dialectpersistence.xml。{/ p>中的hibernate.cfg.xml媒体资源

相关问题