Feeds de los foros

En la página principal de los foros encontrarás los enlaces al logo feed feed general y al de cada uno de los foros.

Subscribete para mantenerte informado de los cambios y responde a las dudas siempre que te sea posible

Buscar en el foro

Foro Persistencia

feed Foro Persistencia Foro: Persistencia

Nuevo Tema Nuevo Tema

Problemas con herencia en hibernate 03/11/2008 16:18
anonymous

Llevo un tiempo peleando con este problema con Hibernate. El caso  que tengo 3 clases, o entidades persistentes  (ClassA, ClassB, ClassC).Todas extienden clase Parent. Por tanto decidi seguir la estrategia de tabla por subclase y de esa manera definir  ClassA, ClassB, ClassC como . Adicional a ello ClassA posee una relacion de con ClassB, y ClassB igual pero con ClassC. Mas o menos omitiendo datos innecesarios este seria el hbm:



       
           
       
       
     
       
       
                    extends="Parent"
                    table="ClassA">
           
           
           
               
               
           
       
       
       
                    extends="Parent
                    table="ClassB">
           
           
           
                    column="classA_id" name="ClassAParent" not-null="true"/>
           
               
               
           
       
       
       
                    extends="Parent"
                    table="ClassC">
           
           
           
                column="classB_id" name="ClassBParent" not-null="true"/>
       
       
   

 

El problema surge cuando quiero borrar todas las instancias de alguna Class. Por ejemplo si borro todas las instancias de ClassA, se supone que todos los hijos ClassB dejen de existir, y puesto que la informacion relacionada de ClassB esta dividida entre 2 tablas, la correspondiente a Parent y la tabla de la info de ClassB, se supone que sea borrada. Y lo mismo ocurriria si borro todas las instancias de ClassB que todos los hijos ClassC deberian ser borrados. Pues el problema cae en que los tuplos que se encuentran en la Tabla de la super clase no son borrados, es como si hibernate no estuviera borrando los objetos en si, si no que solamente se estan ejecutando los constraints en la base de datos, y hibernate no intenta hacer nada por borrar los hijos. Pues asumo que algo debo de estar olvidando en el mapping. Muchas gracias

#unapprove_message#
RE: Problemas con herencia en hibernate 03/11/2008 16:20
anonymous

Error al incluir el hbm

 

class name="Parent" table="Parent">
       
           
       
       
     
       
       
                    extends="Parent"
                    table="ClassA">
           
           
           
               
               
           
       
       
       
                    extends="Parent
                    table="ClassB">
           
           
           
                    column="classA_id" name="ClassAParent" not-null="true"/>
           
               
               
           
       
       
       
                    extends="Parent"
                    table="ClassC">
           
           
           
                column="classB_id" name="ClassBParent" not-null="true"/>
       
       
   

#unapprove_message#
RE: RE: Problemas con herencia en hibernate 05/11/2008 07:36
jholder

cuando eliminas una instancia que tiene hijos, esta tiene que estar tambien mapeada en hibernate como un bag set list  o lo que apliques.  no olvides en dicho mapeo del lado del padre de lo hijos poner inverse=true y cascade=all-delete-orphan.  Si puedes lee bien la documentacion de Hibernate al respecto, ya que tiene sus vueltas!

suerte

JUan holder

#unapprove_message#
#thread_expired#.
Sun Microsystem Logo NHT-Norwick Logo

© 2002-2007 Asociación javaHispano