I have a MongoCollection in which I assign a collection.
I\'m trying to find a user by his id.
user = (Document) usersCollection
Your issue is that you assume that the find() method returns a single Document. It doesn't. It returns a list of them.
In MongoDB 2 Java driver there was a method on the DBCollection class named findOne(). In the MongoDB 3 Java driver API, the findOne() method isn't there. So your new code for finding exactly one document becomes similar too this one:
collection.find(eq("_id", 3)).first()
where eq("_id", 3) is called a filter on your collection.