我有一个带有 Spring 插件的 struts2 Web 项目。 applicationContext.xml 位于
/WEB-INF/applicationContext.xml
我如何在我的类(class)中访问它
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
似乎不起作用。
最佳答案
您并没有真正以正确的方式处理此问题,因为您不应该加载应用程序上下文。但是,您尝试过吗:
new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
我建议您将以下内容添加到 web.xml 中:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
这将确保 Spring IOC 容器在应用程序启动时初始化。然后,您可以使用 Spring 为您的操作提供连接的必要依赖项。您不需要像您正在做的那样获取 IOC 容器,因为这不是依赖项注入(inject)。
关于java - Struts2中如何获取Springs ApplicationContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9102554/