我正在查看' ViewExpiredException'点击后退按钮,仅在Chrome浏览器中(IE和Firefox - 没问题)。仅当前一个视图有一些ajax更新时才会发生这种情况。
注意:如果跳过上面的第2步,则没有问题,如下所示
请注意我在MyFaces 2.1.8上,我也按照BalusC的建议使用NoCacheFilter。这就是为什么IE和Firefox没有问题,但问题只出在Chrome上,而且只有当前一个视图有ajax更新时才会出现问题。
非常感谢任何帮助或指针来解决问题或您的第一个想法。
如果我可能错过了您可能想知道的任何信息,请告诉我。
更新:2014年6月27日
在上面的情况中,如果我可以使用自定义ViewHandler 在回发期间恢复的视图返回null时手动创建和构建视图,请提供建议。 我已经检查了问题的答案Can you POST to JSF2 page with an expired session?。但它在我的设置中不起作用,它显示空白页面。任何的想法。是因为我使用的是MyFaces 2.1.8,它有不同的状态管理器实现吗?
非常感谢提前。 最好的祝福, 库马尔。
答案 0 :(得分:1)
之前我遇到过类似的问题。
我通过以下方式解决了这个问题:
它对我有用。
答案 1 :(得分:0)
刚刚解决了这个问题。在页面中有多个表单,每个表单都有一个隐藏的输入javax.faces.viewState。当加载后退导航页面时,如果上一页有一些ajax调用,则Chrome正在从缓存加载这些状态输入。我的修复是在所有表单上自动完成,隐藏的输入现在从缓存加载新鲜。我希望这可以帮助有需要的人。
<script>
$(function(){
$('form').attr("autocomplete", "off");
});
</script>