У меня есть простое (Servlet, JSP и JSTL) веб-приложение, основной функцией которого является отображение изображений, полученных с внутреннего сервера. Сервлет контроллера перенаправляет пользователя в JSP, который, в свою очередь, использует другой сервлет для отображения результирующего изображения на том же JSP. Далее в JSP есть строка, похожая на:
<a href="<c:out value='${imageURL}'/>"><img src="<c:out value='${imageURL}'/>" alt="image view" border="1"></a>
, который вызывает GET-запрос к сервлету, генерирующему изображение, вызывая его генерацию изображения.
Мой вопрос: как мне обрабатывать исключения, выдаваемые этим генерирующим изображение сервлетом?
У меня уже есть определенная страница ошибки (в web.xml) для обработки ServletException в моем веб-приложении, но это не работает для этого генерирующего изображения сервлета, и в результате в журналах сервера Tomcat появляются следующие ошибки:
SEVERE: Exception Processing ErrorPage[exceptionType=javax.servlet.ServletException, location=/WEB-INF/ExceptionPage.jsp]
java.lang.IllegalStateException: Cannot reset buffer after response has been committed
Каково мое решение в этой ситуации?
Я хотел бы иметь возможность обрабатывать исключения, выдаваемые из этого генерирующего изображения сервлета, и отображать некоторые ошибки в основном пользовательском интерфейсе или пересылать пользователя на другую страницу ошибок.