在我的JSF應用程序中,我需要從託管bean構造函數重定向。我有下面的代碼這樣做:重定向表單託管bean構造函數拋出「java.lang.IllegalStateException」
HttpServletResponse httpServletResponse = (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
httpServletResponse.sendRedirect("HomeV.jsf");
但這是拋出以下異常:
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)
at javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:126)
at com.sun.faces.context.ExternalContextImpl.redirect(ExternalContextImpl.java:419)
我甚至嘗試以下操作:
FacesContext.getCurrentInstance().getExternalContext().redirect("HomeV.jsf");
在與此相關的計算器問題中提及here但我仍面臨同樣的例外。
相關:http://stackoverflow.com/questions/4032825/how-to-make-a-redirection-in-jsf/4099405#4099405但在這種特殊情況下,您似乎不需要導航的情況下。根據功能要求,我會使用過濾器。 – BalusC 2011-04-14 12:29:36