0

Я буквально схожу с ума по этой проблеме.Internet Explorer не отображает img в среде liferay

Мы создали среду Liferay, которая использует методы @RessourceMapping для предоставления изображений на нашем веб-сайте. Эти изображения отображаются в каждом браузере (Safari, Chrome, Firefox, Mobile) - кроме Internet Explorer.

Наш код в интерфейсе довольно проста:

public void getImage(ResourceRequest request, ResourceResponse response) throws IOException { 

byte[] imageSrc = getImageFromDatabase() 
response.setContentType("image/jpg"); 
OutputStream portletOutputStream = response.getPortletOutputStream(); 
portletOutputStream.write(imageSrc); 
response.setContentLength(length); 
portletOutputStream.flush(); 
portletOutputStream.close(); 

} 

СПЯ отображения изображения также не сложно:

<div class="span12"> 
    <img src="${getImageUrl}" width="100%" /> 
</div> 

Что я могу видеть (в Internet Explorer Dev Tools) является то, что для некоторых изображений, которые не загружаются, я получаю 304, а другие просто «отменены».

Вот пример URL я звоню:

http://my-server/web/my-portlet/display?p_p_id=mylongportletnamedisplayportlet_WAR_mylongportletname&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_resource_id=getImage&p_p_cacheability=cacheLevelPage&p_p_col_id=column2&p_p_col_count=2&_mylongportletnamedisplayportlet_WAR_mylongportletname_id=658468&_mylongportletnamedisplayportlet_WAR_mylongportletname_imageType=logo&_mylongportletnamedisplayportlet_WAR_mylongportletname_entityType=car 

Любая идея, почему эти изображения не отображаются в Internet Explorer?

+0

Можете ли вы поделиться «getImageUrl», а также сформировать ссылку на изображение? –

+0

Привет, спасибо за ваш комментарий. Изображение - это просто нормальное изображение jpg/RGB. Ничего особенного здесь. URL, который я вставляю выше – Breiti

+0

В URL-адресе, который идентифицирует контент изображения, нет. Его просто URL-адрес вызова AJAX. Разве вы не должны писать изображение где-нибудь и установить его ссылку на тег img? –

ответ

0

Я не нашел ответ на мой вопрос, но я нашел обходной путь:

Я использую простой сервлет. Он просто возвращает изображение, и вот оно: выполнено через 5 минут, работает как шарм.

На данный момент я буду придерживаться сервлетов.

Смежные вопросы