日期:2014-05-20  浏览次数:20952 次

NND, 项目移植报个No bean named 'sessionFactory' is defined
项目是SSH的架构,开发的时候是用的tomcat,并能正常运行,
但是移植到weblogic10上后,访问页面竟然出现:
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'sessionFactory' is defined at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:360)

XML code

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <!--定义Spring的配置的位置,可以定义多个配置文件,可以使用通配符 -->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:/applicationContext*.xml</param-value>
    </context-param>
    
    <!--设置一起动当前的Web应用,就加载Spring,让Spring管理Bean-->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <!-- Spring 刷新Introspector防止内存泄露 -->
    <listener>
        <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
    </listener>

    <!-- 编码过滤 -->
    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    
    <!--解决Hibernate延迟加载出现的问题,需要放到struts2过滤器之前-->
    <filter>
        <filter-name>lazyLoadingFilter</filter-name>
        <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
    </filter>
    <!--Struts2的过滤器,使用Struts2,必须配置该项-->
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!--解决Hibernate延迟加载出现的问题,仍需要放到struts2过滤器mapping之前-->
    <filter-mapping>
        <filter-name>lazyLoadingFilter</filter-name>
        <url-pattern>*.action</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    



    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>
    <!-- Struts Tag Library Descriptors -->
    <jsp-config>
        <taglib>
            <taglib-uri>/WEB-INF/tlds/c.tld</taglib-uri>
            <taglib-location>/WEB-INF/tlds/c.tld</taglib-location>
        </taglib>
        <taglib>
            <taglib-uri>/WEB-INF/tlds/fn.tld</taglib-uri>
            <taglib-location>/WEB-INF/tlds/fn.tld</taglib-location>
        </taglib>
        <taglib>
            <taglib-uri>/WEB-INF/tlds/fmt.tld</taglib-uri>
            <taglib-location>/WEB-INF/tlds/fmt.tld</taglib-location>
        </taglib>
    </jsp-config>
    <!--  
        <error-page>
        <error-code>500</error-code>
        <location>/500.jsp</location>
        </error-page>
        <error-page>
        <error-code>404</error-code>
        <location>/404.jsp</location>
        </error-page>
    -->
    <welcome-file-list>
        <welcome-file>login.jsp</welcome-file>
    </welcome-file-list>
</web-app>