我有一个播放框架应用程序[版本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实体。
任何帮助将不胜感激。
答案 0 :(得分:3)
如果我没错,那么JDBC类型16是BOOLEAN
(看java.sql.Types
)。您的问题可能是由于使用了错误的hibernate.dialect引起的,该错误的hibernate.dialect不知道您尝试选择的某个表中出现的BOOLEAN
类型。查看hibernate.dialect
或persistence.xml
。{/ p>中的hibernate.cfg.xml
媒体资源