不支持操作异常:jsonobject

lskq00tm  于 2021-06-10  发布在  ElasticSearch
关注(0)|答案(1)|浏览(611)

我正在学习elasticsearch,我想使用hibernate search搜索数据,但发生了以下错误:

java.lang.UnsupportedOperationException: JsonObject
    at com.google.gson.JsonElement.getAsInt(JsonElement.java:243)
    at io.searchbox.core.SearchResult.getTotal(SearchResult.java:184)
    at org.hibernate.search.elasticsearch.impl.ElasticsearchHSQueryImpl.execute(ElasticsearchHSQueryImpl.java:301)
    at org.hibernate.search.elasticsearch.impl.ElasticsearchHSQueryImpl.queryEntityInfos(ElasticsearchHSQueryImpl.java:275)

这是我的依赖

at org.hibernate.search.query.hibernate.impl.FullTextQueryImpl.list(FullTextQueryImpl.java:197)
        at org.hibernate.search.jpa.impl.FullTextQueryImpl.getResultList(FullTextQueryImpl.java:157)
        at org.hibernate.demos.hswithes.model.Main.main(Main.java:37)

这是我的pom.xml

<dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-search-orm</artifactId>
                <version>5.6.1.Final</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-search-elasticsearch</artifactId>
                <version>5.6.1.Final</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-entitymanager</artifactId>
                <version>5.1.3.Final</version>
            </dependency>

我使用Java8和ElasticSearch6.8。

pvabu6sv

pvabu6sv1#

HibernateSearch5.6已经很老了。它只支持elasticsearch 2.0-2.4。
使用ElasticSearch6.8测试的hibernate search的唯一版本是hibernate search 6.0。如果您刚刚开始使用应用程序,我强烈建议您使用该版本。它公开了一个不同的api,但它更适合elasticsearch。
也要确保使用HibernateORM5.4。hibernate orm 5.1.3不能与hibernate search 6.0一起使用。

相关问题