title: IndirectList not instantiated when using List but it works when using ArrayList
body: <p>i am facing some confusion when using a List or an ArrayList with the framework JSF 
  I used to work direclty with a defined ArrayList :</p>
  
  <pre><code>@OneToMany
  ArrayList&lt;Book&gt;books;
  </code></pre>
  
  <p>and in some controlers , i can do: <code>user.getBooks();</code> , i will get the elements of my list and that's good</p>
  
  <p>but something different happens when i use List instead of ArrayList:</p>
  
  <pre><code>@OneToMany
  List&lt;Book&gt;books;
  </code></pre>
  
  <p>if i try: <code>user.getBooks();</code> i will get : <code>IndirectList: not instantiated</code>
  i can only get the list if i do : <code>FetchType.EAGER</code></p>
  
  <p>can someone explain me the difference?</p>