我使用包装器PrimeFaces.ajax.AjaxResponse来处理ViewExpiredException (重新加载页面):
var handleViewExpired = function (viewId) {
window.alert('${msg.ajax.viewExpired}');
window.location.reload();
};但是,有时在尝试单击站点上调用AJAX请求的任何内容时,我会一次又一次地收到这个错误:
javax.faces.application.ViewExpiredException: /tree.xhtmlNo saved view state could be found for the view identifier: /tree.xhtml
at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:128)我在以错误的方式进行刷新吗?我应该怎么做才能调用整个页面重新加载,例如在浏览器中单击重新加载?我需要删除cookie (JSESSIONID,oam.Flash.RENDERMAP.TOKEN)吗?
我使用的是运行在WebSphere 7.0上的PrimeFaces 3.5和MyFaces 2.0.7。
发布于 2013-04-03 19:19:38
如果您有许多(>15)个页面/视图/框架在会话中同时打开,则以下内容可能会很有用。
你需要看一看:
后退按钮操作的(顶级)视图状态(页)的数量
确定是否相关的快速操作是将这些数字设置为500,并查看它们是否相关,然后,您可以在以下链接中找到更多信息:
http://www.java.net/node/681211
https://stackoverflow.com/questions/15252234
复制相似问题