java - Hibernate搜索可以与eclipse JPA提供程序一起使用吗?

标签 java jpa search eclipselink hibernate-search

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/

相关文章:

hibernate - Antlr识别异常

java - 根据 Spring Boot 中的角色获取用户列表

java - 如何在 Java 8 中向 LocalDate 添加天数时跳过周末?

java - 将静态ArrayList中的数据插入到mySql数据库中的表中

java - TransactionRolledbackLocalException 客户端的事务在访问@Singleton 时中止

android - 搜索建议背景

java - 如何根据元素属性从 PriorityQueue 中删除元素?

sql - 搜索中的 INT 与 VARCHAR

java - Graphql-java 中的自定义标量

java - 如何在 Java 的 POI 中使用 XWPFTable 合并单元格(或应用 colspan)?