Hello Folks,
i have this JSON Data in Elastic , and i want to check in mytest Index , if it contains the application_id=6 , so i can avoid sending the same JSON DATA twice with the same application_id=6 .
Is there any Function in Java like example "check_exists_content_field" to check wheather the Field application_id=6 existis in the Index "mytest" ???
i am using REST ClientAPI in Java version 8.0 , and Elasticsearch Version 6.3.1.
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "mytest",
"_type": "_doc",
"_id": "1",
"_score": 1,
"_source": {
"entity": {
"birthday_id": 0,
"application_id": 6,
"mission": [
"element 1"
,
"element 2"
]
},
"process": {
"login_id": 1311,
"page_name": "update"
},
"text": "hello world"
}
}
]
}
I just found how to check the Indexname , but not the field "application_id=6" inside the Index.
boolean checkIndexExist = client.admin().indices()
.prepareExists("hier mytest indexname as example")
.execute().actionGet().isExists();
i tried to create request , and assign it with the indexname "mytest" above, and asked it to return the field "application_id" like in this page
https://www.elastic.co/guide/en/elasticsearch/client/java-rest/6.7/java-rest-high-get-field-mappings.html
GetFieldMappingsRequest request1 = new GetFieldMappingsRequest();
request1.indices("mytest");
request1.fields("entity", "application_id");
GetFieldMappingsResponse response = client.admin().indices()
.getFieldMapping(request1, RequestOptions.DEFAULT);
i cound not finde the RequestOptions Class.
Otherwise at the end of the Page is written `
final Map<String, Map<String, GetFieldMappingsResponse.FieldMappingMetaData>> mappings =
response.mappings();
and that did not work until i changed it to
final Map<String, Map<String, Map<String, GetFieldMappingsResponse.FieldMappingMetaData>>> mappings
= response.mappings();
Please any Idea how to check the field "application_id=6" as Request bevor letting my ClientAPI send the same Data with the same field twice , i will be thankfull.