title: Grails validation of a list objects
body: <p>I'm trying to get grails to validate the contents of a List of objects, might be easier if I show the code first:</p>
  
  <pre><code>class Item {
    Contact recipient = new Contact()
    List extraRecipients = [] 
  
    static hasMany = [
            extraRecipients:Contact
    ]
  
    static constraints = {}
  
    static embedded = ['recipient']
  }
  
  class Contact {
    String name
    String email
  
    static constraints = {
      name(blank:false)
      email(email:true, blank:false)
    }
  }    
  </code></pre>
  
  <p>Basically what i have is a single required Contact ('recipient'), this works just fine:</p>
  
  <pre><code>def i = new Item()
  // will be false
  assert !i.validate() 
  // will contain a error for 'recipient.name' and 'recipient.email'
  i.errors 
  </code></pre>
  
  <p>What I'd like also do it validate any of the attached <code>Contact</code> objects in 'extraRecipients' such that:</p>
  
  <pre><code>def i = new Item()
  i.recipient = new Contact(name:'a name',email:'email@example.com')
  
  // should be true as all the contact's are valid
  assert i.validate() 
  
  i.extraRecipients &lt;&lt; new Contact() // empty invalid object
  
  // should now fail validation
  assert !i.validate()
  </code></pre>
  
  <p>Is this possible or do I just have to iterate over the collection in my controller and call <code>validate()</code> on each object in <code>extraRecipients</code>?</p>