search - ElasticSearch Play-1.2 模块在客户端模式下不起作用

标签 search module playframework elasticsearch playframework-1.x

我在 Play 应用程序中使用 Elasticsearch Play 模块,但只成功了一半。我能够在本地/嵌入式模式下配置和使用它。但是,我无法在客户端模式下运行。

我在托管我的 play 应用程序的同一个盒子上设置了 elasticsearch 服务。我将以下内容添加到我的应用程序配置中:

# Elasticsearch 模块

elasticsearch.local=false
elasticsearch.client=localhost:9200

我在 DEV 模式下运行。我也尝试连接到远程主机但没有成功。在这两种情况下,当我向应用程序发出第一个请求时,它会开始加载各种模块,并在尝试连接到 elasticsearch 服务时挂起。这是我的日志中的一个片段:
[TIME: 2013-08-09 19:59:09] [LOG LEVEL: DEBUG]  MorphiaPlugin-1.2.12> reading configuration<BR>
[TIME: 2013-08-09 19:59:15] [LOG LEVEL: INFO]   Connected to memcached <BR>
[TIME: 2013-08-09 19:59:15] [LOG LEVEL: INFO]   Connecting Play! to Elastic Search in Client Mode<BR>
**[TIME: 2013-08-09 19:59:15]   [LOG LEVEL: INFO]   Transport Client - Host: localhost Port: 9200**

编辑
连接到端口 9300 工作。但是 elasticsearch 抛出 java.io.StreamCorruptedException 一旦我尝试连接。这是堆栈跟踪的片段:
[2013-08-14 09:44:29,405][WARN ][transport.netty] [Kl'rt] exception caught on transport layer [[id: 0x30ec6e1f, /192.168.10.126:45148 => /192.168.10.126:9300]], closing connection
java.io.StreamCorruptedException: invalid internal transport message format
    at org.elasticsearch.transport.netty.SizeHeaderFrameDecoder.decode(SizeHeaderFrameDecoder.java:27)
    at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:425)
    at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)

最佳答案

首先,您使用的是 play2-elasticsearch 模块吗?在 Play 2 之前有一个 play-elasticsearch 模块,但我假设您指的是 play2-elasticsearch 模块。

如果您使用的是 play2-elasticsearch,您是否尝试过 elasticsearch.client="localhost: 9300 "? play2-elasticsearch 的 github 存储库中的 README.md 在其示例中使用端口 9300,这是 Elasticsearch 使用的传输端口,如下所述:http://www.elasticsearch.org/guide/reference/modules/transport/ .

关于search - ElasticSearch Play-1.2 模块在客户端模式下不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18216681/

相关文章:

javascript - JQuery IIFE 外部文档就绪 - 错误模式

python 包导入模块使用 __init__.py

java - Play Framework 如何从本地运行和 Web 应用程序引用 conf 文件夹中的文件作为 Java InputStream

postgresql - Play Framework : "too many connections" database error

php - Bing 搜索 API 限制并限制为每个域单个页面

linux - 是否有用于在 Linux 上搜索 msword 文档文件的模块?

ruby - 为什么 Ruby 模块包含排除了模块的单例类?

playframework - POJO、JPA 绑定(bind)和复选框

php - 在搜索中突出显示多个关键字

java - com.day.cq.search.impl.SimpleSearchImpl 是否公开了 addPredicate() 方法?