Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/06/2012, 12:44
eduscarello
 
Fecha de Ingreso: agosto-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Hibernate y carga de objetos relacionados

Hola como estan, queria realizarles una pregunta. Estoy persistiendo 2 entidades una MAquina y la otra Reparacion, donde una maquina puede tener una o muchas reparaciones, es uan relacion muchos a uno-->en hibernate <many-to-one>. Cuando yo quiero cargar todas las reparaciones que tengo en la BD los objetos Maquina son todos nulos,esto lo resolvi sin cerrar la conexion cuando traigo todos los objetos reparacion, ya que me tiraba una excepcion "org.hibernate.LazyInitializationException: could not initialize proxy - no Session", entonces mi pregunta es: ¿cuando debo cerrar esa session , o si nada mas espero hasta que el garbage collector lo elimine?..Este es el codigo que trae mis reparaciones desde la BD:

Código Java:
Ver original
  1. public List listOfObjects(Class hereditaryClass) throws Exception{
  2.             ArrayList<Object>  list = null;
  3.            
  4.             session = startTransaction();
  5.             try {
  6.                 Query query = session.createQuery("from " + hereditaryClass.getName());
  7.                 list = (ArrayList<Object>)query.list();
  8.                 //closeTransaction(session); ->no cierro la sesion y funciona
  9.             } catch (HibernateException e) {
  10.                 closeTransaction(session);
  11.                 throw new Exception();
  12.             }
  13.             return list;
  14.     }

Otra cosa que me olvide de poner es que el atributo lazy en el tag de hibernate <many-to-one/> lo tengo en false para que me traiga todo de una.Muhcas gracias por su tiempo.