「beforePhase」で例外が発生した場合、「ErrorPage」にリダイレクトする方法は? リダイレクトしようとすると、「Response Already Committed」というメッセージが表示されます。
よろしくラジ
「beforePhase」で例外が発生した場合、「ErrorPage」にリダイレクトする方法は? リダイレクトしようとすると、「Response Already Committed」というメッセージが表示されます。
よろしくラジ
以下のコードが役立つかどうかを確認してください。
public void beforePhase(PhaseEvent e)
{
try
{
//if something doesn't work here
}
catch(Exception e)
{
System.out.println("Exception ocurred in beforePhase method");
FacesContext context = FacesContext.getCurrentInstance();
ExternalContext externalContext = context.getExternalContext();
UIViewRoot newPage = context.getApplication().getViewHandler().createView(context,"/pages/techErrorPage.jsf");
context.setViewRoot(newPage);
context.renderResponse();
}
}