在我的JSF页面中,我在PrimeFaces数据表中显示客户,该数据表启用了筛选和排序,当用户单击客户时,它将在同一窗口中打开客户详细信息页面,这是ok的。
但是当用户按下后退键时,过滤和排序就丢失了,我的用户希望保留表上的过滤和排序,而不想一次又一次地做过滤,我知道细节页可以在新选项卡中打开,这样就解决了这个问题,但是用户希望在同一个窗口中查看细节。
编辑:Backing Bean是viewScoped
viewScoped bean存储在视图映射中,因此只要用户停留在同一个视图中,它就会被存储,如果用户导航到一个新视图,viewScoped bean就会被销毁/销毁。
所以我建议两种方法来解决你的问题:
- 设置你的bean为sessionscope
- 或更好的(由于书签)requestScoped,并将过滤器属性添加到URL,如:filter.xhtml?color=1234&category=1233…等等,或者如果你使用友好的url重写/过滤器/1234-1233…等