opensessioninviewfilter不起作用,请大家看一下是否哪里配置有问题?
opensessioninviewfilter不起作用,页面显示的时候,还是出现lazy load的错误,请大家看一下是否哪里配置有问题?
1,filter已经设置ok了. 从log中可以确认.
OpenSessionInViewFilter.doFilterInternal: Opening single Hibernate Session in OpenSessionInViewFilter
SessionFactoryUtils.doGetSession: Opening Hibernate Session
2,然后,我在从继承的DAO中调用getHibernateTemplate()执行查询时,查询没有问题,显示的log如下:
org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession: Opening Hibernate Session
[ 08-11 23:06:02 ] org.springframework.orm.hibernate3.HibernateTemplate.flushIfNecessary: Eagerly flushing Hibernate session
[ 08-11 23:06:02 ] org.springframework.orm.hibernate3.SessionFactoryUtils.closeSession: Closing Hibernate Session
应该是重新打开了一个新的session.
3,最后,可看到filter的close session日志.
[ 08-11 23:06:02 ] org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal: Closing single Hibernate Session in OpenSessionInViewFilter
[ 08-11 23:06:02 ] org.springframework.orm.hibernate3.SessionFactoryUtils.closeSession: Closing Hibernate Session
4,然后,到页面render时,就出现了lazy load的错误.
5,看了论坛以后,可能是事务的设置导致DAO中的getHibernateTemplate()的方法没有获取到filter最早页面请求时的那个session. 请大家帮忙解决一下.
我的环境: Hiberate 3.0+Spring 2.0.4;