tuve la (in) famoso problema de hibernación y la carga diferida cuando se prestan vistas .... Como muchos dicen, las dos únicas soluciones son:primavera OpenSessionInViewInterceptor no funciona
- hacer que el método transaccional (y esto no siempre es deseable)
- Use OpenSessionInViewInterceptor.
Lo último es preferible IMO. De todos modos no estoy seguro si esto interceptor está disparando en todo (de hecho, tengo la misma excepción de carga perezosa y nada cambia):
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: it.jsoftware.jacciseweb.beans.Listino.prodotti, no session or session was closed
estoy usando simples asignaciones de URL basada en anotaciones, por lo que la lectura de los documentos de Spring 3, estoy usando esto en mi servlet-context.xml:
<bean id="handlerMapping"
class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
<!-- <property name="order" value="2" /> -->
<property name="interceptors">
<list>
<ref bean="openSessionInViewInterceptorInst" />
</list>
</property>
</bean>
Lo que debería hacer el truco. Pero no está funcionando y recibo la excepción. ¿Cómo me aseguro de que mi interceptor está disparando? ¿Cómo puedo solucionar esto?
Sus obras de encantamiento, gracias. De todos modos, para el futuro, ¿cómo me aseguro de que un interceptor se active y mi configuración sea correcta? De lo contrario, al igual que en estas situaciones, no hay otra manera de saberlo que no sea ver que ya no recibo la excepción. Debe ser una forma de depurar esto o registrarlo. – gotch4
@ gotch4 Si activa el inicio de sesión en org.springframework en DEPURAR, puede verlo en el archivo de registro. –
¿Cómo hago eso con precisión? Lo siento, soy un novato cojo – gotch4