Чем отличается навигация в JSF
FacesContext context = FacesContext.getCurrentInstance();
context.getApplication().getNavigationHandler().handleNavigation(context, null, url);
и перенаправление
HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
response.sendRedirect(url);
и как решить, когда что использовать?
Проблема с навигацией заключается в том, что URL-адрес страницы не меняется, если faces-redirect=true
не добавляется в строку запроса URL-адреса навигации. Однако в моем случае добавление faces-redirect=true
выдает ошибку, если я хочу перенаправить на страницу JSF, отличную от -, например на обычную HTML-страницу.
И еще один вариант, предложенный BalusC в Ошибка перенаправления JSF 2.0