【问题标题】:JSF 2.0 ViewHandler.restoreView(), ViewHandler.createView(): Client or/and Server Viewstate?JSF 2.0 ViewHandler.restoreView()、ViewHandler.createView():客户端或/和服务器视图状态?
【发布时间】:2012-07-30 14:29:23
【问题描述】:

在恢复/创建视图阶段(“2.2 标准请求处理生命周期阶段”部分)的 JSF 2.0 规范中说:

如果请求是回发,则调用 setProcessingEvents(false) 当前的 FacesContext。然后调用 ViewHandler.restoreView(),传递 当前请求的 FacesContext 实例和视图标识符, 并为恢复的视图返回 UIViewRoot。如果从返回 ViewHandler.restoreView() 为空,抛出 ViewExpiredException 适当的错误消息。 ...

当谈到 ViewHandler.restoreView() 时,这里指的是哪个状态?这里是服务器组件状态还是客户端组件状态?

更一般地说,如何区分客户端和服务器状态?如果有任何类型的交互,JSF 2.0 如何设法使两者保持同步?

这里维基百科acknowledges several types of state saving,包括客户端和服务器状态的保存和恢复,就不多说了。

【问题讨论】:

    标签: jsf-2


    【解决方案1】:

    当谈到 ViewHandler.restoreView() 时,这里指的是哪个状态?这里是服务器组件状态还是客户端组件状态?

    它是 JSF 组件树,所以我认为无论您在脑海中定义的“服务器组件状态”术语在这里最适用,因为您的“客户端组件状态”术语很可能是指 HTML DOM 树(其中由 JSF 在渲染响应阶段生成并从服务器发送到客户端)。


    更一般地说,如何区分客户端和服务器状态?如果有任何类型的交互,JSF 2.0 如何设法使两者保持同步?

    是的,HTTP 请求(基本上没有其他方法可以让 HTTP 客户端与 HTTP 服务器交互......)。请特别注意javax.faces.ViewState 请求参数。

    【讨论】:

      猜你喜欢
      • 2013-05-26
      • 2013-03-30
      • 1970-01-01
      • 1970-01-01
      • 2011-06-14
      • 2011-12-25
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      相关资源
      最近更新 更多