错误呈现视图:java.lang.IllegalStateException:在提交响应后无法创建会话

时间:2013-11-27 10:15:52

标签: jsf maven session jboss7.x

我正在jboss AS 7.1上开发一个企业应用程序。 我正在阅读那些问题的答案(Q1Q2),然后问我同样的问题,解决方案是升级到Mojarra 2.1.9。 我正在使用maven,但我没有引用任何Mojarra jar依赖关系,因为它是由jboss服务器提供的,我不知道它自己使用哪个版本,因为这些问题很久以前就被问到了,我不知道是否解决方案只是添加依赖关系到我的pom来覆盖jboss使用的版本(通常,jboss AS 7.1已经克服了这个问题,我不明白为什么它仍然发生在我身上).. 我应该添加哪个版本或者目前最好的解决方案是什么?

干杯。

1 个答案:

答案 0 :(得分:3)

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肯定需要升级。只需在webapp的javax.faces.jar中删除所需Mojarra版本的/WEB-INF/lib文件(目前,2.1.26是最新版本2.1.x),并将以下上下文参数添加到webapp的web.xml

<context-param>
    <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
    <param-value>true</param-value>
</context-param>