title: Every time fetched Lazy OneToMany collection
body: <p>I have a Patient who has a Set of NeurologicalFinding medical records.</p>
  
  <p>Patient class structure is as follows:</p>
  
  <pre><code>@Entity
  @Table(name = "patient")
  public class PatientEntity {
  
     //other properties
  
     @OneToMany(fetch = FetchType.LAZY, mappedBy = "patient")
     private Set&lt;NeurologicalFindingEntity&gt; neurologicalFindingList;
  
     public Set&lt;NeurologicalFindingEntity&gt; getNeurologicalFindingList() {        
      return neurologicalFindingList; //DEBUGGER never got to this line
     }
  
     //other get and set methods
  }
  </code></pre>
  
  <p>NeurologicalFinding class structure is as follows:</p>
  
  <pre><code>@Entity
  @Table(name = "neurological_finding")
  public class NeurologicalFindingEntity{
  
     //other properties
  
     @ManyToOne
     @JoinColumn(name = "patient_id")
     private PatientEntity patient;
  
     //get and set methods
  }
  </code></pre>
  
  <p>In my app, I want to get a Patient by his ID without his NeurologicalFinding records with the following method of the DAO:</p>
  
  <pre><code>public PatientEntity getPatientById(int patientId) {      
  
     Criteria criteria = sessionFactory.getCurrentSession()
              .createCriteria(PatientEntity.class);
  
     criteria.add(Restrictions.eq("id", patientId));
  
     return (PatientEntity) criteria.uniqueResult();
  }
  </code></pre>
  
  <p>When I use this method I still get patient WITH his NeurologicalFinding records.
  The getter of the collection is never called (checked with debuger), so how is it possible that the lazy collection is loaded when nobody asked for it?</p>
  
  <p>If you need more info about my app I can provide you with it.</p>