如何显示blob字段中的图像

时间:2013-10-17 15:10:58

标签: java jsp

我正在关注此guide 以了解如何显示blob字段中的图像。

Blob image = null;
byte[ ] imgData = null ;

// here i get the blob and i'm sure that 'image' is not null //////////
image = rsListaNews.getBlob("immagine_principale");    

imgData = image.getBytes(1,(int)image.length());

response.setContentType("image/jpg");
OutputStream o = response.getOutputStream();
o.write(imgData);
o.flush();
o.close();

我收到此错误

org.apache.jasper.JasperException: org.apache.jasper.JasperException: An exception occurred processing JSP page /Include/Chiusura.jsp at line 70

67:     
68:         response.setContentType("image/jpg");
69: 
70:     OutputStream o = response.getOutputStream();
71: 
72:     o.write(imgData);
73: 

1 个答案:

答案 0 :(得分:1)

您不应该使用JSP来写入响应OutputStream。

您只能在单个请求/响应流中写入响应的Writer或它的OutputStream,但不能同时写入。有可能是你JSP中的某个地方,它已经写入Writer(即使它只是空格)。

Servlet

可以更好地提供图片等二进制数据

此外,您永远不应该关闭()响应Writer / OutputStream,因为这是容器的责任。