Servlet和Spring集成

时间:2011-10-10 03:12:46

标签: spring jsf servlets integration

这是我的JSF和spring集成:

我添加

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

,以便在应用程序启动时初始化/WEB-INF/applicationContext.xml中指定的Spring bean并将其放入ServletContext

然后我使用

获得春豆
FacesContextUtils.getWebApplicationContext(FacesContext.getCurrentInstance()).getBean("XXXXBean");

它需要FacesContext导致它无法轻松进行单元测试,无法在Web容器外部使用。我可以在不指定FacesContext的情况下从spring语境中获取spring bean吗?

1 个答案:

答案 0 :(得分:1)

如果您使用弹簧测试,请查看this。您也可以通过ApplicationContext.getBean()从春季上下文中获取bean。您可以在@Before方法或测试中的@BeforeClass方法中构建此上下文。上下文可以从各种来源构建 - 外部xml文件,类路径资源和其他(在上面的javadoc中读取“所有已知的实现类”部分)。