在Web应用程序中的运行时动态加载Spring上下文

时间:2009-10-17 07:34:51

标签: java spring tomcat web-applications applicationcontext

我正在将使用Spring Framework的标准Java应用程序转换为Web App。此应用程序基于运行时参数加载新的Spring Context,这是使用ClassPathXmlApplicationContext/FileSystemXmlApplicationContext完成的。

所以我的问题是如何在Web应用程序中执行相同操作,因为我已经配置了我的web.xml并添加了Spring Listeners,如下所示:

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

另一个问题,我的部署环境在Tomcat 5.5上,我在春季上下文加载期间无法看到任何记录,以了解错误。

2 个答案:

答案 0 :(得分:2)

如果您实际上是想在启动Web应用程序时加载可配置的上下文,则可以使用属性占位符为上下文名称配置web.xml。

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:${my_context_file}</param-value>
</context-param>

答案 1 :(得分:1)

要打开日志记录,您可能需要在log4j.properties文件中设置它,如下所示: log4j.logger.org.springframework = DEBUG

您还必须确保登录到CONSOLE而不是其他某些流。如果你那么日志消息应该出现在catalina.out