JSP und File

Status
Nicht offen für weitere Antworten.

mathon

Bekanntes Mitglied
Hallo,


Ich habe eine JSP Seite wo ich in einem Formular ein paar Daten eingebe und dann wenn ich auf submit drücke wird eine neue Seite angezeigt wo die daten wieder angezeigt werden und eine entsprechende grafik dazu, die von den eingegebenen werten abhängt. Jedoch ist das problem, dass nach dem abschicken und anzeigen der werte und grafik immer noch die alte grafik von der vorigen aktion angezeigt wird und erst wenn ich auf refresh im browser klicke wird die neue grafik bzw. file angezeigt. Kann man das problem irgendwie beheben??🙁

danke

mfg
mat
 
wenn die Graphik dynamisch erzeugt wird dann an der Stelle
Code:
res.setHeader("Expires","Mon, 1 Jan 1990 12:00:00 GMT");
res.setHeader("Cache-Control","no-store, no-cache, must-revalidate");
res.addHeader("Cache-Control","post-check=0, pre-check=0");
res.setHeader("Pragma","no-cache");
einbauen - oder woher kommt denn das Bild?
 
Das Bild kommt von einem jpeg File in meinem WebApplication Root directory.

Wo soll ich das Code-Fragement in meiner JSP-Seite einbauen?

lg
 
gar nicht

wie wird denn die "neue Graphik" bei dir eingebunden? musstu halt ein anderes src Attribut verwenden
 
Eingebunden wird das ganze folgendermaßen:

Code:
<% TestForm form = (TestForm)request.getAttribute("testForm");
  	
  	  LineChart demo = new LineChart("Your Chart");
  	  
  	  CategoryDataset dataset = demo.createDataset(form.getJahre(), form.getRates(), form.getDerivatesValues());
	  JFreeChart chart = demo.createChart(dataset);
	  
	  String path = "C:/Programme/jboss-4.0.3/server/default/deploy/TestWebApplication.war/lineSample.png";

	  File chartfile = new File(path);
		
	  	
		try
		{
			ChartUtilities.saveChartAsPNG(chartfile, chart, 700, 600); 
		}
		catch(Exception ex)
		{
			ex.printStackTrace();
		}
  	  %>

<html:img page="http://localhost:8080/AssetRatioCheck/lineSample.png"/>

Also in einem scriptlet erzeug ich das Chart speicher es in einem file (hab da den absoluten Pfad angeben, da mir nicht klar war, wie ich das definieren kann, damit automatisch ins root verzeichnis meiner WebApplication das png-file gespeichert wird)
Ja und dann binde ich es mit dem html:img tag ein.

Kann man da jetzt was machen, damit man nicht immer auf refresh vom browser klicken muss damit gleich das neue linechart diagram angezeigt wird?

lg
 
hmm, da gibts eigentlich nur eine Möglichkeit

du schreibst dir ein Servlet, das das Bild von der Platte liest und zurück zum Client stream und baust die obigen Header mit ein

ggf. könnte es auch funktionieren, wenn du nach dem saveChartAsPNG einen harten redirect zum Client schickst und auf einer weiteren Seite das HTML ablieferst
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben