0

早些时候,我在我的应用程序中使用了 TransportClient。最近转向 AWS 管理 Elastic Search 服务。得知 AWS 托管的 ES 集群不支持 TransportClient。

因此,将代码迁移到使用 BulkProcessort 将文档插入 ES 的位置。当我将代码重构为 ES 文档的一部分时,我添加了这一行。

BulkProcessor bulkProcessor = BulkProcessor.builder(client::bulkAsync, listener).build(); 

我在 client::bulkAsync 收到一个错误,说 Client 不是功能接口。

需要帮助了解我做错了什么。

文档链接供参考,

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/master/java-rest-high-document-bulk.html#java-rest-high-document-bulk-processor

4

1 回答 1

0

您的客户对象的类型是什么?它必须是 RestHighLevelClient 实例。

这是一个工作代码:https ://github.com/dadoonet/legacy-search/blob/02-bulk/src/main/java/fr/pilato/demo/legacysearch/dao/ElasticsearchDao.java

于 2017-12-06T21:28:37.170 回答