I too had this same issue. After debugging, it appears the trouble
maker is line 1284 in EMongoDocument.php which is the return line of
the search() method:
return new EMongoDocumentDataProvider($this);
I changed it to:
return $this;
And the issue was resolved. The problem is that the admin.php view
passes $model->search() as the first parameter to the
EMongoDocumentDataProvider constructor. But $model->search is itself
returning an EMongoDocumentDataProvider. So the object is being passed
as a parameter to it's own constructor. The constructor is really
wanting an EMongoDocument object which is what the above fix provides.