Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Redirect JSF2重定向到返回按钮上的第一页或URL复制粘贴(不涉及身份验证)_Redirect_Jsf 2_Registration_Servlet Filters_Prerenderview - Fatal编程技术网

Redirect JSF2重定向到返回按钮上的第一页或URL复制粘贴(不涉及身份验证)

Redirect JSF2重定向到返回按钮上的第一页或URL复制粘贴(不涉及身份验证),redirect,jsf-2,registration,servlet-filters,prerenderview,Redirect,Jsf 2,Registration,Servlet Filters,Prerenderview,我有一个JSF2.0应用程序,用于使用自注册创建帐户。在第一个页面上,有名称、电子邮件、uid等字段。对于任何注册,我们都会显示确认页面(其他自定义页面以及中间的页面)和最终成功页面。在JSF中使用faces redirect=true呈现每个页面,因此整个过程中有3-4个页面(facelets)。在这个应用程序中,我使用SessionScope支持bean来显示中间页面/确认页面/最终页面等。注册完成后,我从会话中清除SessionScope bean并使会话无效 问题是: 确认页/中间页等显

我有一个JSF2.0应用程序,用于使用自注册创建帐户。在第一个页面上,有名称、电子邮件、uid等字段。对于任何注册,我们都会显示确认页面(其他自定义页面以及中间的页面)和最终成功页面。在JSF中使用faces redirect=true呈现每个页面,因此整个过程中有3-4个页面(facelets)。在这个应用程序中,我使用SessionScope支持bean来显示中间页面/确认页面/最终页面等。注册完成后,我从会话中清除SessionScope bean并使会话无效

问题是: 确认页/中间页等显示用户从第一页输入的用户详细信息(使用支持bean中的EL:#sessionBean.firstName等)。因此,如果用户直接在浏览器中输入此URL(host/appName/confirmationPage.xhtml),页面将加载空白值(因为用户没有直接进入第一个页面)。此外,注册完成后,如果用户单击“上一步”按钮,则会显示空白值(在筛选器类中未显式设置缓存,因此此处不使用缓存,这是正确的行为)

如果名字等不存在,如何强制用户转到第一页。i、 e.当用户登录到某个页面时,确保该用户仅通过该会话的第一个页面登录到该页面

应该使用筛选器类吗?还是应该使用prerenderview事件检查空白值并将其重定向到第一页?这里没有“用户登录”,因为没有身份验证。我相信这是一个常见的用例,我想知道在JSF中是否有任何最佳实践