你好,百叶草!
我试图在scala中使用库elastic4s,但是当我运行以下代码时(为了获取索引ads中的广告列表):
trait elastic4s {
def get: Future[SearchResponse] = {
val client = ElasticClient.local
client execute { search in "ads"->"ad" }
}
}我有个例外:
An error has occured: org.elasticsearch.indices.IndexMissingException: [ads] missing巴斯丁与全部输出在这里。
这是我的配置:
-- Java
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
-- ElasticSearch
version 1.0.1
-- Elastic4s
version 2.10-1.0.1 弹性搜索已经启动并运行,在localhost上:9200,这个索引ads存在。这一卷曲请求:
curl -XGET 'http://localhost:9200/ads/ad/_search'返回
{
"took": 6,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "ads",
"_type": "ad",
"_id": "UrKm89AXTzOxB9kFdpue4Q",
"_score": 1,
"_source": {
"json": "json"
}
}
]
}
}我不明白..。如果有人能告诉我一条路:)
发布于 2014-04-01 18:56:06
本地节点不会与运行在该进程之外的其他Elasticsearch实例通信。本地节点是JVM的本地节点。
“守则”的评论说:
“该节点是本地节点。本地节点是使用本地(JVM级别)发现传输的节点。将发现在同一JVM内启动的其他(本地)节点(实际上是类加载器)并与之通信。JVM之外的节点不会被发现。”
您需要使用远程客户端连接到外部实例,即使它们在本地运行。我想这似乎违反直觉,但远程实际上意味着IPC或基于套接字的。
https://stackoverflow.com/questions/22684625
复制相似问题