很长时间以来,我一直在我的项目中使用 Tomcat 6.0.26。现在,我需要在这个项目中使用 EL 2.2,所以我将其移至 Tomcat 7.0.19,没有进行其他更改(使用 Mojarra 2.1.2-b04 和 RichFaces 4.0.0)。当我启动它时,一切都很好,直到我尝试任何 a4j:commandButton 或 h:commandButton 它都会抛出 ViewExpiredException,即使应用程序启动不到一分钟(对于信息,我在 web.xml 中强制了 30 分钟会话超时) .
使应用程序正常工作的唯一方法是更改此设置:
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
它是服务器,我将其更改为客户端,但服务器设置最好保留数据服务器端,并且不要在每次请求时将其传输到客户端。
编辑:看起来服务器到客户端修复了ViewExpiredException的问题,但网站上的用户登录功能不再起作用。它登录到用户主页,但是在单击任何链接后,它的作用与用户不是记录器一样(我使用SessionScoped ManagedBean来保存用户信息)。
有人有这个bug吗?
谢谢,
亚历克斯。