Akh*_*oes 6 jsf jsp response.redirect
我觉得这将是一个最短的答案将是一个问题:"这就是为什么JSF取代了JSP",但我会继续问问题.
问题:我想知道:我可以获取JSF页面的Response对象(如果有的话)?
为何奇怪?:我发现自己处于需要从JSF页面传递到JSP的情况,所以我想为什么不response.sendRedirect从一个从JSF页面调用的bean 重定向(with )然后......你可以看到它的标题.
我觉得这样可以用更干净的方式完成,但看不出怎么样!
编辑:在它上面,我还会询问哪种方式最适合重定向到JSF页面.
提前感谢您的建议.
好吧,如果你想要获得这个response物体,你可以JSF像下面那样拥有它!
HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
Run Code Online (Sandbox Code Playgroud)
但是你真的不需要让response对象只能重定向到外面JSF.使用以下方法可以更轻松地完成此操作:
ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
externalContext.redirect("http://www.example.com/myJspPage.jsp");
Run Code Online (Sandbox Code Playgroud)
编辑:
当您使用任何非动作方法时,您可以使用上述任何一种方法!但是当你使用任何动作方法时,正确JSF的重定向方式是:
public String goToOutsideAction(){
....
return "/myPage.xhtml?faces-redirect=true"
}
Run Code Online (Sandbox Code Playgroud)
该方法应返回上下文相关视图ID,目标必须是JSF页面.
| 归档时间: |
|
| 查看次数: |
14584 次 |
| 最近记录: |