Hibernate 搜索可以与 eclipse JPA 提供程序一起使用吗?
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<小时/>
将 Hibernate 搜索与 eclipselink JPA 一起使用时出现此异常。
FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search.getFullTextEntityManager(ClientEntityManagerHelper.getEntityManager());
// create native Lucene query unsing the query DSL
// alternatively you can write the Lucene query using the Lucene query parser
// or the Lucene programmatic API. The Hibernate Search DSL is recommended though
QueryBuilder qb = fullTextEntityManager.getSearchFactory()
.buildQueryBuilder().forEntity(WikiPage.class).get();
org.apache.lucene.search.Query luceneQuery = qb
.keyword()
//.onFields("name", "content", "authors.name")
.onFields("name", "content", "pageSummary")
.matching("wiki")
.createQuery();
异常内容:
线程“main”org.hibernate.search.SearchException中的异常:尝试在没有Hibernate EntityManager的情况下使用Hibernate搜索:类org.eclipse.persistence.internal.jpa.EntityManagerImpl
最佳答案
Hibernate Search 强制您使用 Hibernate 作为 JPA2 实现。您不能将 EclipseLink 与 Hibernate Search 一起使用。
这里有一个项目可以使 EclipseLink 和其他 JPA2 实现使用 Hibernate Search:
https://github.com/s4ke/hibernate-search/tree/genericjpa/genericjpa
关于java - Hibernate搜索可以与eclipse JPA提供程序一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38502434/