title: Grails- Assigning associated domain objects into List vs ArrayList
body: <p>I have this relationship:</p>
  
  <pre><code>User{
  ...
  hasMany = [tags: Tag]
  
  }
  
  Tag{
  ...
  }
  </code></pre>
  
  <p>Some where in my service I have this code:</p>
  
  <pre><code>List&lt;Tag&gt; tags = user.tags
  </code></pre>
  
  <p>But this does not work, I am getting this error: </p>
  
  <hr>
  
  <pre><code>org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '[com.app.ext.Tag : 1]' with class 
  'org.hibernate.collection.PersistentSet' to class 'java.util.List' due to: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: java.util.List(com.app.ext.Tag)
      at ConsoleScript15.run(ConsoleScript15:6)
  </code></pre>
  
  <p>If I change my code to:  </p>
  
  <pre><code>ArrayList&lt;Tag&gt; tags = user.tags
  </code></pre>
  
  <p>It works as expected! though <code>ArrayList</code> is subclass of <code>List</code>.
  <em>Any explanation?</em> </p>
  
  <p>Grails version: <strong>2.3.0</strong>  </p>