Изображение из bytearray не завершено в IE8
Java6, Struts2.2.3.1 - Я конвертирую байтовый массив в изображение (jpg). Пожалуйста, смотрите ссылку ниже, если вы откроете это в IE, изображение не будет полным, тогда как оно нормально открывается в Firefox или Chrome.
Джава
Я кодирую bytearray и конвертирую в String, используя MiGBase64 - где this.bean.imageByteArrayString ссылается на bean-компонент формы
this.bean.setImageByteArrayString(new Base64().encodeToString(imageInByteArr, false));
JSP
<img src="data:image/jpg;base64,<c:out value='${bean.imageByteArrayString}'/>" />
Не уверен, почему это не работает в IE8.
1 ответ
IE8 имеет ограничение 32 КБ на схему URI данных. Смотрите также статью в Википедии на эту тему.
Вместо этого я предлагаю сгенерировать нормальный URL-адрес и иметь сервлет для обслуживания изображения, или, если изображение на самом деле уже находится в файловой системе диска веб-сервера, для создания другого контекста веб-приложения, чтобы можно было просто ссылаться на него напрямую по URL-адресу.