9

如何重定向到同一页面(我不知道该页面;重定向是在多个页面共享的菜单内完成的)?

我试过

return "?faces-redirect=true";

在操作方法结束时,但我收到一条错误消息,因为无法找到“?faces-redirect = true”的导航案例。

在此先感谢您的帮助。

4

2 回答 2

20

您需要在结果中提供有效的视图 ID,而不仅仅是查询字符串。您可以通过 获取当前视图 ID UIViewRoot#getViewId()

String viewId = FacesContext.getCurrentInstance().getViewRoot().getViewId();
return viewId + "?faces-redirect=true";
于 2013-10-01T15:09:57.473 回答
-1

只需从您的应用程序操作中返回null或空字符串。

根据 JSF2.2 规范,第 7.4.1 节:

如果应用程序操作返回的结果为null 或空字符串,并且映射到当前视图标识符的导航案例都没有非空条件表达式,则必须重新显示相同的视图。

于 2013-10-01T15:05:14.370 回答