High level rest client for java


I have read here that an official High Level Java Rest client for elasticsearch is scheduled.

I have found an unofficial rest client, but I would like to know when the official one will be available for production.

Any idea?

Hi Francesco,
there is not a date yet for it. We are hard at work with it. You can follow the progress for the first phase on this issue: https://github.com/elastic/elasticsearch/issues/23331 . Most of the search api is done but we are now working in parsing back aggregations. I'd expect the high level client to be released in a few months. Do keep in mind the first version won't support all of the api, but only get, index, bulk, delete, update and search.


Ok, so in the meantime one solution for using java with the elasticsearch search API, could be to use the Java API library for structuring queries and aggregations and then serialize to json string with the org.elasticsearch.common.xcontent.XContentHelper class. But I am still wondering why in the java api doc I can find only the org.elasticsearch.client maven dependency and nowhere the dependency for org.elasticsearch.
Reading this doc one could think that the Java API is usable only with the transport client, which is not totally true..


In your case I would use maven coordinates for the transport client. You can then build requests and serialize them to json, and send them over in any way you want, not necessarily through transport. Transport client depends on the whole elasticsearch anyways so you will have available all the classes you need.

Hope this helps

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.