使用web.xml配置filter的方式:
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
但是,还是出现一下异常:
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'sessionFactory' is defined
org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:355)
org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:800)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:237)
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:646)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.lookupSessionFactory(OpenSessionInViewFilter.java:218)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.lookupSessionFactory(OpenSessionInViewFilter.java:202)
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:146)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)

很是奇怪,我明明定义了SessionFactory,后来发现,OpenSessionInViewFilter需要id为sessionFactory的bean,而不是id为SessionFactory的beam就一个字母的大小写之分
本文介绍了在使用Spring框架和Hibernate整合时,配置OpenSessionInViewFilter过程中遇到的NoSuchBeanDefinitionException异常。异常显示找不到名为'sessionFactory'的bean,尽管已经定义了对应的SessionFactory。通过调试发现,OpenSessionInViewFilter需要的是id为'sessionFactory'而非'SessionFactory'的bean。
1309

被折叠的 条评论
为什么被折叠?



