转发给自己时刷新jsf页面

Refresh jsf page when forwarding to itself

我正在开发一个带有 PrimeFaces 树作为导航的 JSF 网络应用程序。
例如:

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

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

从项目页面导航到客户页面或相反时,这不是问题。但是,当我在项目页面上并尝试导航到另一个项目页面(比如从项目 1 到项目 2)时,页面不会刷新(大概是因为 JSF 假定它已经在正确的页面上)。

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

我不想使用 faces-redirect=true 来防止浏览器中的 URL 发生变化。

谢谢!

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

这种方法在编程上并不十分优雅,但它有效并且不会显着降低应用程序的速度。