首页 > 解决方案 > 使用 RestHighLevelClient 创建索引失败

问题描述

我正在尝试使用RestHighLevelClient创建索引,客户端已成功创建,但在创建索引时出现错误。

 CreateIndexRequest request = new CreateIndexRequest(elasticsearchIndex);
    request.settings(Settings.builder()
            .put("index.number_of_shards", 1)
            .put("index.number_of_replicas", 0)
    );
    org.elasticsearch.client.indices.CreateIndexResponse createIndexResponse = elasticsearchClient.indices().create(request, RequestOptions.DEFAULT);





Exception in thread "main" java.net.ConnectException: Connection refused
        at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:788)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:218)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:205)
        at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1454)
        at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1439)
        at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1406)
        at org.elasticsearch.client.IndicesClient.create(IndicesClient.java:128)

请让我知道根本原因或任何解决方案。

谢谢

标签: javaelasticsearchelastic-stackrest-clientresthighlevelclient

解决方案


看起来您的应用程序无法连接到弹性搜索服务器,您能否检查 JHLRC 客户端配置中提供的连接设置(主机名和端口)并确保您已连接到弹性搜索。

您可以通过使用邮递员等其他客户端点击您的弹性搜索主机名和端口来检查连接。还要确保您的应用程序和弹性搜索服务器具有网络连接。


推荐阅读