是否有数据库,primefaces和" keep-session-alive" - 免费解决方案在恢复表单输入时在后台静默防止或处理ViewExpiredException?
例如,具有"的用户保持登录cookie"不希望被重定向到某种错误或开始页面;他填写了一些表单值,在一小时内返回,然后,当他提交表单时,使用之前的输入重新创建相同的视图,并再次重新执行底层的requestcope-bean的提交操作。 / p>
我已经注意到omnifaces和mojarras
<o:enableRestorableView />
<f:view transient="true">
但是,当我们谈论永久登录用户时,如果这是正确的方法,我并不是真的。
感谢你指出正确的方向。
答案 0 :(得分:1)
使用之前的输入重新创建相同的视图,并再次重新执行底层的requestscope-bean的提交操作
正是为了满足这一要求,透明地重新创建和恢复与请求范围内的bean绑定的过期JSF表单,<f:view transient="true">
中的无状态JSF是正确的解决方案。
在这种特定情况下,<o:enableRestorableView>
是不必要的。它仅对透明地重新创建和恢复与视图作用域bean绑定的过期JSF表单有用。您只需要根据@PostConstruct
中的请求参数手动填充视图范围bean属性。
换句话说,您不需要混合这些解决方案。它在技术上没有意义,因为无状态JSF中视图范围bean无用,它们的行为就像请求范围的bean。