有什么方法可以通过Java方法将页面重定向到其他页面吗?

我只能使用以下命令将转发到:

FacesContext.getCurrentInstance().getExternalContext().dispatch("/foo.xhtml");

或使用faces-config.xml的导航规则。

你有什么想法?

最佳答案

不确定您要做什么,但是ExternalContext#dispatch()仅执行转发,而不执行重定向。您想改用 ExternalContext#redirect()

externalContext.redirect("foo.xhtml");

甚至是外部的(分派(dispatch)是不可能的)
externalContext.redirect("http://stackoverflow.com");

您通常希望在bean的action方法中执行此操作。

由于您在注释中提到了JavaScript,因此可以使用JS进行重定向:
window.location = "foo.xhtml";
// Or
window.location = "http://stackoverflow.com";

关于jsf - 从Java Bean重定向JSF页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5955130/

10-11 06:17