Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用JEST写入Elasticsearch 7.3-POST方法无效_Java_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Java,elasticsearch" /> elasticsearch,Java,elasticsearch" />

Java 使用JEST写入Elasticsearch 7.3-POST方法无效

Java 使用JEST写入Elasticsearch 7.3-POST方法无效,java,elasticsearch,Java,elasticsearch,我一直在尝试使用JEST api向正在工作的elasticsearch 7.3集群写入一些信息。一些资源: 遇到以下错误消息: uri[/my_index]和方法[POST]的HTTP方法不正确,允许:[GET、DELETE、PUT、HEAD] 我发送数据如下: // write directly to elastic Map<String, Object>infoMap = new LinkedHashMap(); lagInfoMap.put("ty

我一直在尝试使用JEST api向正在工作的elasticsearch 7.3集群写入一些信息。一些资源:

遇到以下错误消息:

uri[/my_index]和方法[POST]的HTTP方法不正确,允许:[GET、DELETE、PUT、HEAD]

我发送数据如下:

    // write directly to elastic
    Map<String, Object>infoMap = new LinkedHashMap();
    lagInfoMap.put("type", "consumer");
    lagInfoMap.put("topicval", topic);
    lagInfoMap.put("groupval", group);
    lagInfoMap.put("sumval", sumLag);

    try {
        jestResult = jestClient.execute(new Index.Builder(infoMap).index("my_index").build());
        if(!jestResult.isSucceeded()) {
            LOGGER.error(jestResult.toString());
        }
    } catch(IOException ioe) {
        LOGGER.error("Unable to write to elastic", ioe);
        return false;
    }
//直接写入弹性体
MapinfoMap=新建LinkedHashMap();
lagInfoMap.put(“类型”、“消费者”);
lagInfoMap.put(“topicval”,topic);
lagInfoMap.put(“groupval”,group);
lagInfoMap.put(“sumval”,sumLag);
试一试{
jestResult=jestClient.execute(new Index.Builder(infoMap.Index(“my_Index”).build());
如果(!jestResult.issucceed()){
LOGGER.error(jestResult.toString());
}
}捕获(ioe异常ioe){
LOGGER.错误(“无法写入弹性”,ioe);
返回false;
}

看起来它想要一个PUT请求,但文档(或我能找到的任何示例)不清楚如何修改execute方法来实现这一点。

几天前,我也遇到了同样的问题,最终放弃了使用elasticsearch 7.3的想法,从他们的Github页面上看,它不像他们的最新版本6.3.1,与elasticsearch 7.X不兼容

Elasticsearch 7.X使用
PUT
HTTP方法为文档编制索引,而早期版本使用
POST
方法,因此您会得到以下异常

uri[/my_index]和方法[POST]的HTTP方法不正确,允许: [获取、删除、放置、头]


我建议您使用elasticsearch official,而不是JEST,这是elasticsearch背后的公司elasticsearch正在开发的活动

几天前,我也遇到了同样的问题,最终放弃了使用elasticsearch 7.3的想法,从他们的Github页面上看,他们的最新版本6.3.1似乎与elasticsearch 7.X不兼容

Elasticsearch 7.X使用
PUT
HTTP方法为文档编制索引,而早期版本使用
POST
方法,因此您会得到以下异常

uri[/my_index]和方法[POST]的HTTP方法不正确,允许: [获取、删除、放置、头]

我建议您使用elasticsearch official,而不是JEST,这是elasticsearch背后的公司elasticsearch正在开发的活动