Cómo forzar a Hibernate 3.3 o 3.5 para usar en lugar de CGLIB Javassist?
Pregunta
¿Es todavía posible forzar a Hibernate 3.3 o 3.5 para usar en lugar de CGLIB Javassist? En mi archivo de propiedades, puse
hibernate.bytecode.provider = cglib
Sin embargo, esto no parece hacerlo. ¿Alguna idea?
Solución
Parece que algunas personas no leyeron mi respuesta correcta así que voy a expresarlo de otro modo: su hibernate.properties
parece correcto, la propiedad está bien definido, que debería funcionar. Así que, lo siento por la pregunta, pero es CGLIB en la ruta de clase?
Actualización: Sólo probado y funciona para mí. Aquí está la salida llego en tiempo de inicialización:
15 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.0.SP1 18 [main] INFO org.hibernate.cfg.Environment - loaded properties from resource hibernate.properties: {hibernate.bytecode.use_reflection_optimizer=false, hibernate.bytecode.provider=cglib} 20 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : cglib
PS: Tenga en cuenta que el apoyo CGLIB ya no se utiliza recientemente (esto no quiere decir que usted ganó' no será capaz de utilizar CGLIB pero la integración no tendrá soporte).
Otros consejos
Sí, también puso
hibernate.properties
en alguna carpeta de origen y recuerde que debe tener el hibermate-cglib-embalar en las dependencias:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-cglib-repack</artifactId>
<version>2.1_3</version>
</dependency>
Recuerde que la biblioteca CGLIB no se desarrolla por cerca de 4 años. Usted debe hacer todo sin embargo, para hacer que el código que trabaja con Javassist, que aún se mantiene activa.