我可以在JSF 1.2或2.0中使用GET进行回发吗?

时间:2013-06-17 08:25:36

标签: jsf-2 jsf-1.2 page-lifecycle

据我所知,在JSF 1.1中,当存在这样的视图时,所有GET请求都会导致回发到当前视图。在JSF 1.2中,这一点发生了变化,因此GET始终创建了一个新视图,因此书签工作正常。是否仍然可以使用GET请求保持当前视图,即具有1.1中的行为?

实施例

  • 获取welcome页面,从facelets welcome.xhtml文件呈现,包含<h:commandLink action="inventory">
  • 点击inventory.xhtml的POST请求链接。广告资源显示,浏览器网址仍为welcome
  • 在浏览器中重新加载页面。在JSF 1.1中,重新显示了库存。在JSF 2.0中,显示欢迎页面
  • 我可以在操作中添加?faces-redirect=true以获取广告资源页面的其他网址,以便该网页重新加载重新显示广告资源
  • 如何获取JSF 1.1的行为,即在不进行重定向的情况下重新显示GET welcome上的广告资源?

为什么我要这样做:不要将webapp的内部暴露给浏览器URL,将整个webapp保存在一个URL下,保存请求往返,平滑增量页面更新而不是浏览器中的完整页面更改

1 个答案:

答案 0 :(得分:0)

我终于通过一个应用程序视图解决了这一需求,该视图动态地包含了应用程序视图本地状态所选择的所需应用程序页面。