Noticias Weblogs Foros Wiki Código

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

Blog de Julio César Pérez Arques

Un test para todos tus mapeos Hibernate v2.0

Diciembre 10th, 2009 - [Enlace local]

El otro día uno de mis chicos me dió un tirón de orejas. Resulta que el test para probar todos los mapeos de las entidades Hibernate de un proyecto que publiqué en el pasado, no es correcto para la versión 3 de Hibernate. La culpa es del método iterate de Query, que si bien en la versión 2 de Hibernate hacía un select de todas las columnas, en la versión 3 sólo lo hace de aquellas que forman el identificador de la entidad.



Así que nueva versión del test, compatible con Hibernate 3 y un poco más sofisticada. Allá va.





public void testHibernateMappingsOk() {

boolean allOk = true;

Map metadata = sessionFactory.getAllClassMetadata();

for (Iterator i = metadata.values().iterator(); i.hasNext();) {

EntityPersister persister = (EntityPersister) i.next();

String entityName = persister.getEntityName();

try {

Query q = session.createQuery("from " + entityName);

q.setMaxResults(1);

q.uniqueResult();

} catch (HibernateException e) {

logger.warn("ERROR probando el mapeo de la entidad " + entityName, e);

allOk = false;

}

}

assertTrue(allOk);

}

» Leer más, comentarios, etc...

Información legal y técnica