BasicDBObject query = new BasicDBObject("metadata", new BasicDBObject("$exists", true)); // (complex query so can't represent using pojos)
query.put("entities", new BasicDBObject("$size", 3));
////////////////////////////////////////////////
//CANONICAL EXAMPLE:
DocumentPojo doc = DocumentPojo.fromDb(documentDb.findOne(query), DocumentPojo.class);
System.out.println("DOC1="+doc.toDb());
BasicDBList dblTest = (BasicDBList) doc.toDb().get("entities");
BasicDBObject dboTest = (BasicDBObject) dblTest.get(0);
if (!dboTest.get("doccount").getClass().toString().equals("class java.lang.Long")) {
throw new RuntimeException(dboTest.get("doccount").getClass().toString() + " SHOULD BE LONG");
}