https://blog.youkuaiyun.com/mnmiaoyi/article/details/98885628
报错信息
org.elasticsearch.action.ActionRequestValidationException: Validation Failed: 1: index is missing;2: type is missing;
at org.elasticsearch.action.ValidateActions.addValidationError(ValidateActions.java:26)
at org.elasticsearch.action.support.replication.ReplicationRequest.validate(ReplicationRequest.java:176)
at org.elasticsearch.action.index.IndexRequest.validate(IndexRequest.java:148)
at org.elasticsearch.action.TransportActionNodeProxy.execute(TransportActionNodeProxy.java:46)
at org.elasticsearch.client.transport.TransportProxyClient.lambda$execute$0(TransportProxyClient.java:60)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:250)
at org.elasticsearch.client.transport.TransportProxyClient.execute(TransportProxyClient.java:60)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:371)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:405)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:394)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:46)
at org.elasticsearch.action.ActionRequestBuilder.get(ActionRequestBuilder.java:53)
at com.baizhi.TestElaticSearch.testIndex(TestElaticSearch.java:49)
测试的代码
package com.baizhi;
import jdk.nashorn.internal.runtime.logging.Logger;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.TransportAddress;
import org.elasticsearch.common.xcontent.XContentFactory;
import org.elasticsearch.transport.client.PreBuiltTransportClient;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;
public class TestElaticSearch {
TransportClient transportClient;
@Before
public void function() throws UnknownHostException {
this.transportClient = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new TransportAddress(InetAddress.getByName("192.168.118.100"), 9300));
}
@Test
public void testConn() {
System.out.println(transportClient);
}
/*
*
* 创建索引
*
*
* */
@Test
public void testIndex() throws IOException {
XContentFactory.jsonBuilder()
.startObject()
.field("name","miaoyi")
.field("age",19)
.field("bir","2018-11-18")
.field("email","miaoyi@26.com")
.field("content","miaoyi is a good boy !")
.endObject();
IndexResponse indexResponse = transportClient.prepareIndex().setSource().get();
System.out.println(indexResponse.status());
}
}
问题解决
IndexResponse indexResponse=transportClient.prepareIndex("ems","emp","10").setSource().get();
这一行需要加上index type id
三个参数,就是("ems","emp","10")