Как лучше мне известно ... После переадресации вызова:
- Ответ создается сервером с кодом состояния 302.
- Ответ идет в браузере, но ничего не отображает
- Этот ответ содержит информацию о целевом ресурсе.
- Браузер берет эту информацию о целевом ресурсе и генерирует встроенный запрос в пункт назначения (но он ничего не отображает для этого ответа)
- Запрос отправляется в пункт назначения, а окончательный ответ поступает в браузер, и браузер отображает его.
Вот 2 вещи, чтобы заметить:
- В случае response.sendRedirect (-) управление переходит к конечному пункту назначения с 1 сети поездка туда и обратно через браузер.
- В этом случае не используют одни и те же объекты запроса и ответа (как Http является протоколом без гражданства)
Так держать это в виду, вы должны обеспечить абсолютный URL (в том числе веб-контекста или веб-корневой папке) ДО ваш конечный ресурс назначения, а не относительный URL.
Возможный дубликат [java.lang.IllegalStateException: не может перенаправляться после того, как ответ был зафиксирован] (http://stackoverflow.com/questions/2123514/java-lang-illegalstateexception-cannot-forward-after-response-has- was-committe) – Lion
Если у вас есть исключение stacktrace, то не забудьте опубликовать полное исключение stacktrace в следующий раз. – Lion