问题标签 [elasticsearch-high-level-restclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1106 浏览

java - 在 Spring Boot 中找不到 Elasticsearch 方法

我已经被这个问题困扰了一段时间,感谢您提供任何帮助。我正在运行2.2.0带有 ElasticSearch 高级 REST 客户端版本的Spring Boot 版本,6.4.3并使用3.2.0Spring-Data-Elasticsearch 版本的版本。我收到以下错误。我尝试了以下尝试来修复,但没有一个。

  1. 多次更改 Spring Boot 版本
  2. 多次更改 ES 版本
  3. 我已经清除了我的 .m2 文件夹并多次重新下载了 maven 依赖项。

我在下面遇到的问题是

试图调用不存在的方法。尝试是从以下位置进行的:

org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate.putMapping(ElasticsearchRestTemplate.java:292)

以下方法不存在:

org.elasticsearch.client.IndicesClient.putMapping(Lorg/elasticsearch/action/admin/indices/mapping/put/PutMappingRequest;Lorg/elasticsearch/client/RequestOptions;)Lorg/elasticsearch/action/support/master/AcknowledgedResponse;

该方法的类 org.elasticsearch.client.IndicesClient 可从以下位置获得:

jar:file:/Users/user/.m2/repository/org/elasticsearch/client/elasticsearch-rest-high-level-client/6.4.3/elasticsearch-rest-high-level-client-6.4.3.jar! /org/elasticsearch/client/IndicesClient.class

它是从以下位置加载的:file:/Users/user/.m2/repository/org/elasticsearch/client/elasticsearch-rest-high-level-client/6.4.3/elasticsearch-rest-high-level-client- 6.4.3.jar

行动: 更正您的应用程序的类路径,使其包含一个兼容的 org.elasticsearch.client.IndicesClient 版本

我的POM在下面

任何帮助表示赞赏。我确信它必须处理兼容性问题,但不确定是哪个。谢谢大家!

更新

通过将我的 elasticsearch 版本更改为6.7.0. 但现在我收到以下错误

我的 POM 现在也如下所示。

0 投票
1 回答
5363 浏览

java - elasticsearch-rest-high-level-client vs elasticsearch-rest-client

我是弹性搜索的新手。开始使用 Elastic search 构建 Spring Boot 应用程序。

使用最新的 ES 版本“elasticsearch-7.7.1”并进行集成,我使用以下 maven 依赖项:

我在应用程序启动时遇到了问题,通过添加以下依赖项来解决:

谁能解释为什么elasticsearch-rest-client需要以及它有何不同elasticsearch-rest-high-level-client

0 投票
1 回答
3074 浏览

java - Spring Data Elastic Search vs Java High Level REST Client

我是弹性搜索的新手。我们正在使用弹性搜索构建一个 Spring Boot 应用程序。

为了集成我的 Spring Boot 应用程序,我们可以使用elasticsearch-rest-high-level-clientspring-boot-starter-data-elasticsearch.

谁能详细说明哪个选项总体上会更好,为什么?

0 投票
1 回答
134 浏览

java - 为什么在 Elastic 搜索中引入 Java 高级 REST 客户端?

有两个名为Java High Level REST ClientJava Low Level REST Client与 Elastic Search 集成的 Java Rest 客户端。

Elastic 搜索是什么时候Java High Level REST Client引入的,为什么?

0 投票
1 回答
925 浏览

java - 如何通过 Java 高级别的客户端在 Elastic Search 中使用多个字段进行搜索

我是弹性搜索的新手。成功实现了用于匹配单个字段的搜索文档 API,如下所示:

我想在单个 API 中使用多个字段过滤数据,例如,需要根据以下条件在上述 API 中添加更多过滤器:

谁能帮助如何在单个 SearchRequest 中应用所有这些过滤器?

0 投票
2 回答
2332 浏览

java - 如何通过 Java High Level Rest Client 实现 Secure Elastic Search

我是弹性搜索的新手。通过Java High Level Rest Client.

我已经如下配置了 JHLRC bean,它工作正常:

开始探索 Elasticsearch 的安全性,在设置证书和密码后,我通过提供以下属性启用了安全性:

我可以使用创建的用户名和密码登录 kibana,但在通过 JHLRC 访问任何 Elastic 搜索 API 时获得 401 Unauthorized。

有人可以帮助我在配置Java High Level Rest Client命中安全弹性搜索时需要做哪些进一步的更改吗?

0 投票
2 回答
1224 浏览

java - Elastic Search SSL 证书到期

我是弹性搜索的新手。通过将我的 Spring boot 应用程序与 Elastic search 集成在一起Java High Level Rest Client,我通过在设置证书和密码后提供以下属性来启用安全性:

这个证书会过期吗?如果是,那么如何在生产中处理这种情况?

0 投票
1 回答
518 浏览

elasticsearch - 使用 Mustache API 解析 Elasticsearch JSON 模板请求

我一直在使用SearchTemplateRequest类来执行我的请求,它使用 Mustache 模板来解析带有传递参数的模板字符串。
Elasticsearch 模板 - 将参数转换为 JSON
但是,我必须更改我将切换到 Java 低级客户端的实现。我想使用 SearchTemplateRequest 在内部使用的 Mustache 实现来解析模板。我可以使用 Mustache 依赖项或使用它的 Elasticsearch 实现。有人可以帮我吗?

我的模板字符串:

我的参数对象:

我的测试代码:

上面的代码向我返回了请求模板字符串,其中空字符串替换了模板。

返回响应:

预期反应:

0 投票
1 回答
37 浏览

java - 在反向代理后面访问 ElasticDB

我有一个 RestHighLevelClient 可以连接到一个反向代理后面的远程 elasticDB,该代理会剥离 ssl。

当我打电话

我得到一个握手失败异常

herehere所述,我检查了日志并找到了ClientHello

和 ServerHello

客户端和服务器都同意密码套件TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

然后按照加密和纯文本的请求。之后是另一个 ClientHello ,它以

线

暗示对Cipher套件的非协议 - 但在上面的行中,两者都同意套件。

有谁知道这里发生了什么以及如何解决异常?

0 投票
3 回答
1307 浏览

elasticsearch-high-level-restclient - 引导方法初始化异常 - Elasticsearch 7.8.0

当我们为索引调用 getMapping 或在下面创建索引函数时使用 java-high-level-rest 客户端,每次都会生成错误。几乎所有与索引相关的调用都会产生此异常。

我正在使用以下环境

弹性搜索 - 7.8.0。openJDK - 11 和 14、JDK 1.8 elasticsearch-rest-high-level-client-7.8.0.jar 及其依赖项包含在 pom.xml 操作系统中:尝试了 Windows 10 和 Linux Mint。