Hi!
Ich habe ein Problem, wenn ich im Textfluss ein Bild aus einer Datenbank in einem JSP (innerhalb eines Popups) anzeigen lassen will.
ich löste das bisher folgendermaßen:
Im JSP:
und im GetImage.jsp:
[Java] response.setContentType("image/jpeg");
//...DBconnecten, DBabfrage und Blob holen... rs ist hierbei das ResultSet, welches maximal nur einnen Blob enthält
Blob blob = (rs.next()) ? rs.getBlob(1) : null;
if (blob != null) {
InputStream is = blob.getBinaryStream();
BufferedImage image = ImageIO.read(is);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response
.getOutputStream());
encoder.encode(image);
}[/code]
Beim ersten Aufruf des Popupfensters mit Bild wird das Bild super angezeigt.
Bei jedem Weiteren Aufruf eines Popupfensters mit Bild wird es auch angezeigt, nur gibt mir Eclipse folgenden Fehler zurück:
Was tun?
Ich habe ein Problem, wenn ich im Textfluss ein Bild aus einer Datenbank in einem JSP (innerhalb eines Popups) anzeigen lassen will.
ich löste das bisher folgendermaßen:
Im JSP:
HTML:
<img src="GetImage.jsp?id=1" />
und im GetImage.jsp:
[Java] response.setContentType("image/jpeg");
//...DBconnecten, DBabfrage und Blob holen... rs ist hierbei das ResultSet, welches maximal nur einnen Blob enthält
Blob blob = (rs.next()) ? rs.getBlob(1) : null;
if (blob != null) {
InputStream is = blob.getBinaryStream();
BufferedImage image = ImageIO.read(is);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(response
.getOutputStream());
encoder.encode(image);
}[/code]
Beim ersten Aufruf des Popupfensters mit Bild wird das Bild super angezeigt.
Bei jedem Weiteren Aufruf eines Popupfensters mit Bild wird es auch angezeigt, nur gibt mir Eclipse folgenden Fehler zurück:
Java:
SCHWERWIEGEND: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response
Was tun?
Zuletzt bearbeitet: