Get API
editGet API
editGet Request
editA GetRequest requires the following arguments:
Optional arguments
editThe following arguments can optionally be provided:
String[] includes = new String[]{"message", "*Date"};
String[] excludes = Strings.EMPTY_ARRAY;
FetchSourceContext fetchSourceContext = new FetchSourceContext(true, includes, excludes);
request.fetchSourceContext(fetchSourceContext);
String[] includes = Strings.EMPTY_ARRAY;
String[] excludes = new String[]{"message"};
FetchSourceContext fetchSourceContext = new FetchSourceContext(true, includes, excludes);
request.fetchSourceContext(fetchSourceContext);
request.storedFields("message");
GetResponse getResponse = client.get(request);
String message = (String) getResponse.getField("message").getValue();
|
Configure retrieval for specific stored fields (requires fields to be stored separately in the mappings) |
|
|
Retrieve the |
Synchronous Execution
editGetResponse getResponse = client.get(getRequest);
Asynchronous Execution
editGet Response
editThe returned GetResponse allows to retrieve the requested document along with
its metadata and eventually stored fields.
String index = getResponse.getIndex();
String type = getResponse.getType();
String id = getResponse.getId();
if (getResponse.isExists()) {
long version = getResponse.getVersion();
String sourceAsString = getResponse.getSourceAsString();
Map<String, Object> sourceAsMap = getResponse.getSourceAsMap();
byte[] sourceAsBytes = getResponse.getSourceAsBytes();
} else {
}
|
Retrieve the document as a |
|
|
Retrieve the document as a |
|
|
Retrieve the document as a |
|
|
Handle the scenario where the document was not found. Note that although
the returned response has |
When a get request is performed against an index that does not exist, the
response has 404 status code, an ElasticsearchException gets thrown
which needs to be handled as follows:
GetRequest request = new GetRequest("does_not_exist", "doc", "1");
try {
GetResponse getResponse = client.get(request);
} catch (ElasticsearchException e) {
if (e.status() == RestStatus.NOT_FOUND) {
}
}
In case a specific document version has been requested, and the existing document has a different version number, a version conflict is raised: