我正在 jboss AS 7.1 上开发一个企业应用程序。 我正在阅读这些问题的答案( Q1 和 Q2 ),询问与我的问题相同的问题,解决方案是升级到 Mojarra 2.1.9。 我正在使用 maven,但我没有引用任何 Mojarra jar 依赖项,因为它是由 jboss 服务器提供的,而且我不知道它本身使用哪个版本,而且由于这些问题很久以前就被问过,所以我不知道是否解决方案只是向我的pom添加依赖项以覆盖jboss使用的版本(通常,jboss AS 7.1已经克服了这个问题,我不明白为什么它仍然发生在我身上).. 我应该添加哪个版本或者目前最好的解决方案是什么?
干杯。
最佳答案
JBoss AS 7.1.0 附带 Mojarra 2.1.5,因此您肯定需要升级。然而不幸的是,JBoss 7.1.0 有一个错误,导致无法从 webapp 的 /WEB-INF/lib
升级 Mojarra。此问题已在 7.1.1 中修复。对于 7.1.0,您需要在 JBoss 自己的模块中升级 Mojarra。
JBoss AS 7.x 和 EAP 6.x 的详细升级说明可以在此答案中找到:Upgrade JSF / Mojarra in JBoss AS / EAP / WildFly .
更新:根据评论,事实证明您没有仔细指定问题中的版本,而您实际上使用的是随 Mojarra 2.1.7 一起提供的 7.1.1,您也使用了 Mojarra 2.1.7。肯定需要升级。只需将所需 Mojarra 版本的 javax.faces.jar
文件(当前 2.1.26 是最新可用的 2.1.x)放入 web 应用程序的 /WEB-INF/lib
中,然后将以下上下文参数添加到 web 应用程序的 web.xml
中:
<context-param>
<param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
<param-value>true</param-value>
</context-param>
关于jsf - 渲染 View 错误 : java. lang.IllegalStateException:提交响应后无法创建 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20239588/