I am literally going crazy about this issue.
We have set up a Liferay environment that is using @RessourceMapping Methods to provide Images to our website. Those images show up on every browser (Safari, Chrome, Firefox, Mobile)- except Internet Explorer.
Our Code in the backend is pretty straightforward:
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();
}
The JSP displaying the Image is also not complicated:
<div class="span12">
<img src="${getImageUrl}" width="100%" />
</div>
What I can see (In Internet Explorer Dev Tools) is that for some of the pictures that don´t get loaded I do get a 304 and for others just "cancelled".
Here is an example of the URL I am calling :
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
Any idea why those images are not displayed in Internet Explorer ?