Entradas

Mostrando entradas de enero, 2011

Trucos al utilizar colecciones en Hibernate

El dia de hoy tuve que agregar nuevos campos a una colección. A primera vista, esto era de los más sencillo: Modificar el POJO Mapear con Hibernate los nuevos atributos Modificar método addElement de la clase que contiene a la colección. Modificar JSP de edición y clase Form (trabajo con struts) Compilar y listo! Sin embargo, me encontré que al ejecutar la aplicación e ingresar datos a los nuevos campos y querer grabar, la base de datos arrojó el error 'unique constraint'.  Después de un buen rato de prueba y error, decidí crear una nueva tabla para almacenar los datos de la colección, con un 'insert/select' traspasé los datos de la tabla original a esta nueva tabla, y luego renombré las tablas de tal manera que la tabla nueva fuera ahora la tabla oficial. Y para mi sorpresa, este pequeño truco hizo la diferencia! Ahora todo funcionaba a la perfección. Conclusiones: Me parece que hibernate, para las colecciones, crea una tabla y una llave primaria que utiliza