Ya no tengo la excepcion( por suerte), la inner exception, es un error de oracle: ora-01722: invalid number\n.
Saludos! On 28 sep, 09:10, Fabio Maulo <[email protected]> wrote: > Cual era el mensaje completo de la exception ? > > 2010/9/28 Erika Fernández <[email protected]> > > > > > > > Muchas gracias Fabio y Charlie. > > > Con respecto a la session decia que no me parecia probable esa opcion, > > porque no salia del contexto de la sesion. > > Con respecto a la excepcion, por mi poca experiencia con NHibernate > > cuando me lanza la excepcion: "could not initialize > > a collection" es porque tengo un error de sintaxis en los mapeos > > (algun error en el tipo de dato, en el nombre del objeto, o en el > > nombre de la columna por ejemplo). En este caso ese era el error. > > > Me ayudo mucho tu explicación para buscar por ese lado Charlie. > > Gracias. > > Saludos! > > > On 27 sep, 16:07, Charlie <[email protected]> wrote: > > > Hola Erika > > > > El problema tal vez sea de un poco de óptica en como trabaja NHibernate > > > > Mira cuando recuperas una entidad y estas trabajando dentro un contexto > > > donde la session esta disponible > > > > (y tienes configurado tu entidad lazy = true) > > > > Al hacer algo como persona.empleados.count te devuelve 0 si no > > > tiene ningún u el numero de entidades en la colección esto lo hace > > > transparente por que trabaja sobre demanda o sea al necesitar saber > > cuando > > > objetos hay en la colección empleado el framework automáticamente va > > hacia > > > el repo (luego a donde este persistido) y las trae para hacer la > > operación > > > que tu requieres > > > > Por otro lado si recuperas la entidad y al siguiente paso no estas en el > > > contexto de la session entonces te tira el error que nos indicas > > > > El 27 de septiembre de 2010 13:30, Fabio Maulo <[email protected] > > >escribió: > > > > > Erika, > > > > Si yo lograra entender lo que estas leyendo solo con > > > > IList listaPersonas = q.List(); > > > > me dedicaría a otro laburo y seguro tendría un fangote de guita. > > > > > Para que entiendas, cuando necesitas ayuda: > > > > 1) si tenes una exception tenes que pasar el texto completo del mensaje > > y > > > > no una parte de el. > > > > 2) si la exception tiene inner-exception tenes que pasar ambos mensages > > > > completo > > > > 3) si hablas de Empleados y Personas no envies lineas de codigo que no > > > > muestran nada de lo que estas hablando > > > > 4) si alguien te dice que es probable (en mi caso no dije probable > > porque > > > > estoy seguro) que tenes un problema con el manejo de la session, trata > > de > > > > explicar como estas manejando la session. > > > > > 2010/9/27 Erika Fernández <[email protected]> > > > > > FAbio: No estoy cerrando session, apenas recupero las personas, me > > > >> fijo en sus empleados. En esta línea: > > > > >> IList listaPersonas = q.List(); > > > > >> José: Necesito buscar un empleado por nro de documento, el tema es que > > > >> el empleado no tiene un nro de documento, pero si la persona (que es > > > >> la clase que contiene todos los datos personales de los empleados) Una > > > >> persona puede tener 1 a muchos empleados (con sus fechas de baja, en > > > >> realidad tiene 1 solo valido). Al consultar la clase Personas, > > > >> necesito sus intancias de empleados, pero como te digo, algunas > > > >> personas no son empleados y no tienen ninguna instancia de empleados. > > > >> Entoces mi duda seria como recupero los empleados de esa persona. > > > > >> Gracias nuevamente > > > > >> On 27 sep, 15:08, Fabio Maulo <[email protected]> wrote: > > > >> > El problemas que tenes es otro. > > > >> > Estas cerrando la session. > > > > >> > 2010/9/27 Erika Fernández <[email protected]> > > > > >> > > Mi problema es que al recuperar una persona, si tiene, necesito > > los > > > >> > > empleados, pero como no puedo configurar lazy=false porque en > > algunos > > > >> > > casos no tiene empleados y me salta la excepcion "could not > > initialize > > > >> > > a collection", no se como cargar dinamicamente los empleados > > cuando > > > >> > > existan. > > > > >> > > Muchas gracias por la ayuda! > > > > >> > > On 27 sep, 14:30, José F. Romaniello <[email protected]> > > wrote: > > > >> > > > El 27 de septiembre de 2010 14:20, Erika Fernández > > > >> > > > <[email protected]>escribió: > > > > >> > > > > Necesito levantar dinamicamente una coleccion. > > > >> > > > > Es asi.... tengo objetos personas los cuales tiene un bag de > > > >> > > > > empleados (0 a muchos empleados). > > > >> > > > > Como muchas personas no tienen en realidad ningun empleados, > > no > > > >> puedo > > > >> > > > > configurar lazy=false en el bag de empleados en el xml de > > > >> personas. > > > > >> > > > Hay como 3 cosas diferentes : > > > > >> > > > - lazy=false/true es para que la colección de empleados, se > > > >> cargue > > > >> > > > inmediatamente cuando cargas el objeto Persona... Lo cual > > para el > > > >> 98% > > > >> > > de los > > > >> > > > casos es innecesario, y practicamente todos usamos el valor > > por > > > >> > > defecto > > > >> > > > lazy="true"... que es lo mismo que no poner nada. > > > >> > > > - El hecho de que una persona tenga 0 empleados y no puedas > > poner > > > >> > > > lazy="false", tampoco tiene mucho que ver.. salvo que tengas > > una > > > >> > > combinación > > > >> > > > de lazy="false" + fetch="join" (no recomendable). > > > >> > > > - Con los valores por defecto todo debería funcionar bien, > > cual > > > >> es el > > > >> > > > problema que tenes? > > > > >> > > > > ¿Como puedo hacerlo? Por lo que estuve leyendo hay 3 librerias > > > >> > > > > distintas para hacer esto. Yo tengo como referencia en mi > > proyecto > > > >> > > > > LinFu. > > > > >> > > > No tiene nada que ver. Vamos a decir que nhibernate necesita > > generar > > > >> > > proxies > > > >> > > > para *many-to-one,* que son lazy. PAra el tema de las > > collections > > > >> > > nhibernate > > > >> > > > no utiliza proxies dinámicos. Osea que en este caso no te > > preocupes > > > >> por > > > >> > > > esto. > > > > >> > > -- > > > >> > > Para escribir al Grupo, hágalo a esta dirección: > > > >> > > [email protected] > > > >> > > Para más, visite: > >http://groups.google.com/group/NHibernate-Hispano > > > > >> > -- > > > >> > Fabio Maulo- Ocultar texto de la cita - > > > > >> > - Mostrar texto de la cita - > > > > >> -- > > > >> Para escribir al Grupo, hágalo a esta dirección: > > > >> [email protected] > > > >> Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > > > > -- > > > > Fabio Maulo > > > > > -- > > > > Para escribir al Grupo, hágalo a esta dirección: > > > > [email protected] > > > > Para más, > > > > visite:http://groups.google.com/group/NHibernate-Hispano-Ocultartexto > > > > de la cita - > > > > - Mostrar texto de la cita - > > > -- > > Para escribir al Grupo, hágalo a esta dirección: > > [email protected] > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > -- > Fabio Maulo- Ocultar texto de la cita - > > - Mostrar texto de la cita - -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
