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 = 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: