title: Remove an entry from array using MongoDB-Java driver
body: <p>I have JSON like :</p>
  
  <pre><code>{ 
      "_id" : "1",
      "_class" : "com.model.Test",
      "itemList" : [
          {
              "itemID" : "1",
              "itemName" : "Foo",
              "resources" : [ 
                  { 
                      "resourceID" : "1",
                      "resourceName" : "Foo Test1"
                   }, {
                      "resourceID" : "2",
                      "resourceName" : "Foo Test2"
                   }
               ]
          }
      ]
  }
  </code></pre>
  
  <p>I need to be able to remove one of records of itemList. 
  I have done the following:</p>
  
  <pre><code>public void removeItemByID(String docID, String itemID) throws Exception {
      MongoOperations mongoOperations = mongoConfiguration.getMongoTemplate();
      Query query = new   Query(where("_id").is(docID).and("itemList.itemID").is(itemID));
      mongoOperations.remove(query, Item.class);
  </code></pre>
  
  <p>}</p>
  
  <p>This approach doesn't work.
  However when I have used the BasicDBObject with $pull approach it works fine !
  What's the difference among these approaches !</p>