在家使用 Spring 3.2、JSF 2.1、JBoss AS7.1,Cloudbees 使用 JBoass AS7.0.1。我也在使用 Servlet 3.0 和一个 WebApplicationInitializer(一个弹簧类)。(我认为问题的根源是 WebApplicationInitializer 没有被加载,也许它加载得太晚了?太早了?)我确实有一个 web.xml,我仅在应该显示 JSF 页面的视图上收到此消息,如果我输入诸如 /xlksdf.xhtml 之类的废话,我会收到一条不同的不相关错误消息。
首先,当我将我的应用程序部署到家中的 JBoss AS7.1 时,它只会在 cloudbees 上正常运行。
当我启动我的应用程序并部署到 cloudbees 时,我得到了这个异常
java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?
org.springframework.web.jsf.FacesContextUtils.getRequiredWebApplicationContext(FacesContextUtils.java:83)
org.springframework.web.jsf.el.SpringBeanFacesELResolver.getWebApplicationContext(SpringBeanFacesELResolver.java:91)
org.springframework.web.jsf.el.SpringBeanFacesELResolver.getBeanFactory(SpringBeanFacesELResolver.java:79)
Cloudbees 在错误屏幕底部显示服务器
JBoss Web/7.0.1.Final
在家里,我可以通过删除实现 WebApplicationInitializer 的类来重新创建这个问题。这让我相信我在 cloudbees 上得到这个的最可能原因是因为 WebApplicationInitializer 没有被识别?也许它在 Servlet 2.5 模式下运行?我正在运行 JBoss,正如 servlet 3.0 的错误消息所验证的那样。感谢您的任何帮助。