Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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
在为前一个请求提供响应之前,将数据预加载到JSF页面中_Jsf - Fatal编程技术网

在为前一个请求提供响应之前,将数据预加载到JSF页面中

在为前一个请求提供响应之前,将数据预加载到JSF页面中,jsf,Jsf,我是JSF的初学者。我正在构建一个应用程序,其中来自数据库的用户详细信息将在另一个JSP中显示。我为我的所有jsp页面(JSF)使用一个托管bean,我在faces配置XML中将它们的作用域定义为请求。登录时,详细信息由我的登录页面中的actionListener方法验证。在离开这个方法之前,我试图设置下一页的托管bean的属性。但是我设置的状态不会保留在第二页中。我错过了什么 请注意,如果这个问题以前被问过并得到了回答,请重定向我 谢谢这两个请求之间的界限是当您从托管bean操作返回导航结果时

我是JSF的初学者。我正在构建一个应用程序,其中来自数据库的用户详细信息将在另一个JSP中显示。我为我的所有jsp页面(JSF)使用一个托管bean,我在faces配置XML中将它们的作用域定义为请求。登录时,详细信息由我的登录页面中的actionListener方法验证。在离开这个方法之前,我试图设置下一页的托管bean的属性。但是我设置的状态不会保留在第二页中。我错过了什么

请注意,如果这个问题以前被问过并得到了回答,请重定向我


谢谢

这两个请求之间的界限是当您从托管bean操作返回导航结果时。然后,将触发重定向(如果配置为重定向)以获得该结果

您有三种选择:

  • 不要在导航规则中使用
    ,这样即使提交后显示另一个页面,您也会保持在相同的请求范围内。缺点是这会损害用户体验-如果按“刷新”,将出现丑陋的“重新提交”对话框
  • 使用
    session
    scope-这在小剂量下不会有害,但小心不要有太多会话范围的bean
  • 使用会话框架(如)-定义一个称为“conversation.access”的自定义范围-只要需要,您的数据都可以访问
  • 从richfaces使用-首选用于ajax请求

我更愿意探讨第三种选择,因为它似乎是解决以后可能出现的问题的一种方法。谢谢,你能告诉我正常请求范围的执行在哪里结束吗?再次感谢。我一点儿也不知道接受答案的事。很抱歉我现在已经这样做了。