转发到自身时刷新jsf页面

时间:2015-01-16 12:51:01

标签: jsf jsf-2 primefaces

我正在开发一个带有PrimeFaces树的JSF webapp,因为它的导航。
例如:

  • 项目1
    • 客户1
    • 客户2
  • 项目2
    • 客户3

当用户点击某个节点时,支持bean会转发到相应的页面,如下所示:

FacesContext.getCurrentInstance().getApplication().getNavigationHandler().handleNavigation(FacesContext.getCurrentInstance(), "null", "/" + /*Page Name*/ + ".xhtml");

从项目页面导航到客户页面或其他方式时,这不是问题。但是,当我在项目页面上并尝试导航到另一个项目页面时(例如从项目1到项目2),页面不会刷新(可能是因为JSF假设它已经在正确的页面上)。

如何在导航到自身时强制JSF刷新页面?

我不想使用faces-redirect=true来阻止浏览器中的网址更改。

谢谢!

1 个答案:

答案 0 :(得分:0)

我最终创建了一个额外的xhtml文件,在加载时调用导航方法。现在单击树节点将重定向到该文件,然后导航方法将重定向到适合所选节点的任何页面。

这种方法并不完全是编程优雅的,但它的工作原理并没有显着降低应用程序的速度。