我有一个大的richfaces树,可以选择树中的每个元素,它通过AJAX加载内容,并进行编辑,从而将您重定向到一个新页面。这是伟大的工作,直到我有一个特别大的文件,我正在工作,保存不再工作。您被重定向到显示正确内容的编辑页面,但是尝试“保存”任何编辑都会导致ViewExpiredException。
我试着调整了很多参数,最终得到了两个修复它的参数:
com.sun.faces.numberOfViewsInSession
com.sun.faces.numberOfLogicalViews据我所见,每个应用程序的缺省值为15,我将其设置为荒谬的500,然后应用程序再次工作。不幸的是,因为我不知道问题在哪里,而且它是一个大型应用程序,所以我无法向您展示任何相关代码。
但问题是:这些参数到底是做什么的,是什么导致我遇到这些异常,以及什么是可接受的值?
更新
我不太清楚为什么这个问题被否决了,但如果是关于所谓的复制:我是通过谷歌找到那篇文章的,但它提供的链接已经死了。除了bog标准(和模糊的)参数的定义外,似乎没有多少关于它们的信息。
发布于 2013-02-22 14:22:53
当使用服务器端状态保存(这是默认的)时,可以使用这两个参数来配置逻辑视图和实际视图的最大数量。
逻辑视图是在每个GET请求上创建的顶级视图(例如,当您在新的浏览器窗口或选项卡中打开页面,在浏览器的地址栏中输入地址栏时,如果.)。每个逻辑视图可以有一定数量的关联的实际视图。实际视图是在用户使用标准JSF机制在页面中导航时创建的(例如,如果您导航到从commandButton中的commandButton方法返回的页面)。两个视图队列都使用LRU算法来决定何时删除视图,并且这些队列的最大数量受到这两个参数的值的限制。
因此,com.sun.faces.numberOfViewsInSession为每个逻辑视图定义了存储在会话中的最大JSF视图数,而com.sun.faces.numberOfLogicalViews定义了每个会话存储的最大逻辑视图数。
根据您提供的信息,您怀疑com.sun.faces.numberOfViewsInSession的配置解决了您的问题,但您必须进一步研究创建这么多视图的原因。
附加链接:
https://stackoverflow.com/questions/15025398
复制相似问题