I have two domain objects,
@Document
public class PracticeQuestion {
     private int userId;
     private List<Question> questions;
// Getters and setters
}
@Document
public class Question {
     private int questionID;
     private String type;
// Getters and setters
}
My JSON doc is like this,
{
    "_id" : ObjectId("506d9c0ce4b005cb478c2e97"),
    "userId" : 1,
    "questions" : [
        {
            "questionID" : 1,
            "type" : "optional"
         },
        {
             "questionID" : 3,
             "type" : "mandatory"
        }
    ]
}
I have to update the "type" based on userId and questionId, so I have written a findBy query method inside the custom Repository interface,
public interface CustomRepository extends MongoRepository<PracticeQuestion, String> {
    List<PracticeQuestion> findByUserIdAndQuestionsQuestionID(int userId,int questionID);       
}
My problem is when I execute this method with userId as 1 and questionID as 3, it returns the entire questions list irrespective of the questionID. Is the query method name valid or how should I write the query for nested objects.
Thanks for any suggestion.
 
     
     
     
     
     
    