Это не так, как это работает. Как уже было сказано ранее, вам просто нужно изменить атрибут src
элемента <img>
на другой URL. Затем веб-браузер автоматически перезагрузит само изображение.
В случае JSP / Servlet, URL должен просто указывать на класс Servlet
, который получает InputStream
изображения из базы данных и записывает его в OutputStream
ответа обычным способом Java IO. с набором заголовков ответа.
Вот как должен выглядеть ваш Javascript:
function changeImage(newSrc) {
document.getElementById(Image_Element_Name).src = newSrc;
}
В этом ответе вы можете найти полный пример того, как должен выглядеть Servlet
.
SocketException: broken pipe
- это просто знак того, что клиентская сторона вообще не обработала ответ и не прервала его. Если вы избавитесь от этого материала Ajax и сделаете это, как описано выше, тогда он должен работать без нареканий.