What is the difference between geo_point and geohash in ELK? It is somehow becoming more difficult to write geodata into elastic using pure java code. Is there as specific library to use in Java or what is the way to go about it?

If you have defined the datatype of your field to geo_point but they are indexed as strings might mean there is a mismatch between your mapping and the document you are sending. You can try to set the dynamic property in your mapping to strict. If the above is true you should see an error:

https://www.elastic.co/guide/en/elasticsearch/reference/6.7/dynamic.html

You can post here your mapping and a example of the document you are sending if possible.