问题标签 [elasticsearch-jest]
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.
java - ElasticSearch Jest 客户端使用:任何查询上的 MalformedJsonException
我正在尝试使用JEST 客户端来搜索位于远程的 ElasticSearch 索引。
但是我遇到了一个问题 - 每一个查询,无论是使用各种构建器还是默认的 ES 查询构造,所有内容都会返回 com.google.gson.stream.MalformedJsonException
代码:
作为最终测试,我只是复制了从 Jest 集成测试示例中可以找到的最小查询,并替换了那里的搜索词,如下所示:
从输出流复制时,此查询如下所示:
没有尾随空格或任何东西,对我来说看起来有效。
仍然得到同样的错误。谁能告诉发生了什么?
java - 如何修复 java.lang.NoClassDefFoundError:: io.searchbox.client.config.idle.ReapableConnectionManager
嗨,当我尝试配置 jest 客户端时,我得到了
java.lang.NoClassDefFoundError:: io.searchbox.client.config.idle.ReapableConnectionManager。
我使用搜索框的 mvn 依赖是 .
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
<version>0.1.7</version>
</dependency>
. 看到错误后,我找到了课程
Reapableconnectionmanager,已经存在。有没有人指导我修复这个错误。
提前致谢。
java - 如何修复 URI 未在 ClientProtocolException 中指定有效的主机名:
当我使用 jest 客户端执行弹性搜索 java API 时,我遇到以下错误
org.apache.http.client.ClientProtocolException:URI 未指定有效的主机名:localhost:9200/index/type/_search
我尝试了各种可能性来解决这个错误,但我被卡住了。我怎样才能解决这个问题?
elasticsearch - 使用 JEST 进行索引/类型映射会引发内部错误
我正在使用JEST
访问Elasticsearch
,到目前为止它工作正常。现在我想从我的应用程序管理索引/类型映射,所以我按照JEST
网站上的一个示例进行操作,但我收到如下错误。
在以 .开头的最后一行引发错误new DocumentMapper.Builder ...
。它相当内部但不知道如何解决这个问题。
有没有人有一些维护映射的工作示例Elasticsearch
with JEST
?
编辑#1:集成测试对我没有帮助:-(
我已经查看了JEST
专注于映射的集成测试https://github.com/searchbox-io/Jest/blob/master/jest/src/test/java/io/searchbox/indices/PutMappingIntegrationTest.java#L46它没有帮助。我不知道从哪里来client()
……根据其他搜索,它似乎来自本机 JAVA API,而不是REST
?知道如何使用它或 client() 来自哪里吗?
解决了!
DocumentMapper.Builder
需要设置参数。Null 在这里不起作用。可以像这样手动创建设置
不,我看不到空指针错误。
elasticsearch - ElasticSearch Jest客户端,如何从命中返回文档ID?
我使用 Jest 作为 ElasticSearch 客户端来搜索文档:
每个Hit
对象看起来像:
{"_index":"some_index","_type":"some_type","_id":"some_id","_score":2.609438,"_source":{"foo1":"bar1","foo2":"bar2"}}
虽然我只能找到hit.source
方法,但似乎没有hit.id
方法。
将其解析为 JSON 对象并检索 key_id
的值是一种方法,但是有没有可以获取文档 ID 的 API?
elasticsearch - How can I make Jest handle an ElasticSearch server being unavailable?
I currently configure Jest by giving it a list of server URIs. Like this:
If one of my ElasticSearch servers go offline (e.g. failure or maintenance), then a percentage of my Jest queries fail. Jest doesn't seem to do any kind of intelligent connection management by default.It must do something like round-robin through the servers or pick a server at random.
Is there a better way to handle this?
java - 使用 Apache HttpComponents 客户端签署 AWS HTTP 请求
我正在尝试向受 IAM 访问策略保护的AWS Elasticsearch域发出 HTTP 请求。我需要签署这些请求才能获得 AWS 的授权。我正在使用Jest,而后者又使用Apache HttpComponents Client。
这似乎是一个常见的用例,但我找不到我应该怎么做才能让 Jest 签署所有请求。
java - 如何在 Java 中使用 jest 客户端在 elasticsearch 中编写搜索代码
我试试这个代码 URL 是http://localhost:9200索引是餐厅类型是菜单。我想通过searchbuilder
. 请任何人都可以帮助我。我得到了这个输出
但我想要身份证数据
在这里搜索代码
我的模型课是
elasticsearch - 基于集群名称/https URL/DNS 名称的 Jest Client 实例化
需要知道 Jest 客户端的实现是否可用于 Https URL(不是 http-,因为它可用),或者仅基于集群名称或基于 DNS 名称访问 Jest 客户端。
如果我不知道这些实现,请建议我。
在 Git 中心打开的问题: https ://github.com/searchbox-io/Jest/issues/270
编辑:
根据下面的参考文章https://github.com/searchbox-io/Jest/blob/master/jest/README.md
很明显 Jest 支持 Https/SSL 连接。
只是想知道它是否可以支持基于集群名称的配置,即不提供主机或端口详细信息?
elasticsearch - WrapperQueryBuilder - aggs 查询抛出 Query Malformed 异常
我有一个 Json 查询字符串:
"\"query\":{\"match_all\": {}},\"aggs\":{\"avg1\":{\"avg\":{\"field\":\"age\"} } }";
通过 执行查询时Jest Client
,聚合值可用。
但是当这个查询被转换成一个 Query Builder ( WrapperQueryBuilder
) 对象时,得到以下异常。
我该如何解决?
编辑1:代码分析:添加代码分析细节:
使用字符串查询和带注释的 SearchSourceBuilder,会显示 aggs 结果。但是通过使用 WrapperQueryBuilder ,无法检索 aggs 结果