lina-: Problem mit "back" und dynamischem bild

Beitrag lesen

Hallo,

Ich habe ein Problem mit der back-Funktion des Browsers und einem dynamisch erstellten Bild auf meinen JSP-Seiten.

Zunächst einmal die Struktur der anzuzeigenden Seite "seite.jsp?orgaeinheit=1" (diese Seite ist immer gleich - je nach id wird ein anderer Inhalt - ganz speziell ein anderes Bild generiert).

Diese Seite enthält die Einbindung der Grafikdatei:
<img src="<%=lnk_grafik%>" border="0" usemap="#Symbole">

die JSP-Variable lnk_grafik ist "grafik.jsp", so daß die JSP-Datei "grafik" als Bild eingebunden ist.
Dieser Grafik-Datei sieht folgendermaßen aus:

<%@ page contentType="image/jpeg" %>
<%@ page import="java.awt.*,java.awt.image.*, com.sun.image.codec.jpeg.* " %>
<jsp:useBean id="orgaeinheit" scope="request" class="mein.Paket.Zeichner" />
<%
  //cachen verhindern
  response.setHeader("Pragma", "no-cache");
  response.setHeader("Cache-Control", "no-cache");
  response.setHeader("Cache-Control","no-store" );
  response.setDateHeader("Expires", 0);
  ServletOutputStream sos = response.getOutputStream();
  JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( sos );
  BufferedImage image = orgaeinheit.getImage();
  encoder.encode( image );
%>

Wenn ich nun in den Seiten vorwärts navigiere funktioniert alles super: Seite wird neu geladen, Bild wird neu generiert und alles ist schön.
Leider leider scheint die back-Funktion des Browsers aber nicht mit dem Bild zurecht zu kommen. Die richtige Seite wird zwar geladen (erkennbar an der Überschrift) aber das Bild ist jeweils noch das der vorherigen Seite. Erst bei einem Reload wird die richtige Grafik gezeigt.
Nun dachte ich mir: bei jedem Seitenaufruf einfach ein Java-script-"reload()" sollte es ja tun ;) Das Ergebnis war eine nette Endlosschleife an reloads *G*

Ich nehme ja fast an, dass hat irgendwas damit zu tun, dass das Bild nicht gecacht ist? Ohne geht es aber leider nicht, da sonst die Navigation nach vorne nicht geht (in diesem Fall ist es genau andersrum --> das Bild der nächsten Seite wird erst bei einem Reload richtig angezeigt)

Hat jemand Ideen und/oder Lösungen zu diesem Problem?