gpt4 book ai didi

java - 重新部署后使用 JSF 2 防止 ViewExpiredException

转载 作者:行者123 更新时间:2023-11-28 22:29:28 27 4
gpt4 key购买 nike

我遇到一个问题,每次我重新部署我的应用程序时,任何现有 session 都会中断并且请求会导致 ViewExpiredException .相关问题或外部邮件列表/论坛帖子中的建议似乎都无法解决此问题。我可以完全不变地重新部署相同的 WAR 文件,并且行为是相同的。

我正在使用 Apache MyFaces 2.2.0、Tomcat 7.0.56 和 Primefaces 5.0。

异常信息为No saved view state could be found for the view identifier:与请求的任何页面。 Primefaces 的 menubar用于导航,似乎实现为 <form>与 POST 请求。这些消息同时出现在那些导航选项和其他使用 POST 的 AJAX 中。

我试过:

  1. 显式设置 org.apache.myfaces.SECRETorg.apache.myfaces.MAC_SECRET值,如图所示 in this document .
  2. 两者都是 clientserver javax.faces.STATE_SAVING_METHOD 的值参数。
  3. 确保所有 bean 及其传递字段都是可序列化的。日志中没有报告序列化错误。
  4. 使用过滤器添加无缓存 header ,例如正如 this answer 中所建议的那样.
  5. session 持久性未禁用,这是我的 context.xml<Manager pathname="" />注释掉了。

最佳答案

尝试:

<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="true"/>

关于java - 重新部署后使用 JSF 2 防止 ViewExpiredException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26592310/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com