Sometimes you just want to make a native query and make Morphia map it nicely. I made it work using:
BasicDBObject parse = BasicDBObject.parse("{location:{$near:{$geometry:{type: 'Point', coordinates: ["+ location[0]+","+location[1]+"]}, $maxDistance: "+ maxDistance+"}}}");
Query<LabDataDTO> query = ((AdvancedDatastore) MorphiaHandler.getStore()).createQuery(LabDataDTO.class, new Document(parse));
... but its not very pretty, uses casting and uses deprecated methods - How do you do that nicely in Morphia 2.0?