# Daten lokal speichern mit unsigniertem Applet



## Sky (30. Nov 2005)

Also folgende Situation ich habe ein Applet, welches Daten von einem Server liest um diese als Tabelle und auch grafisch darzustellen. Das Applet ist nicht signiert (und soll auch nicht signiert werden   ;liegt nicht an mir. Typischer Fall von "Ist halt so") 

Die Daten aber lokal gespeichert werden können: 
a) Die Tabelle als csv
b) Die Grafiken als jpg oder png

Da ich ja (unsigniert) nix speichern darf, habe ich mir ein Shell-Script geschrieben (liegt im cgi-bin und darf deshalb von meinem Applet ausgeführt werden), welches mir die Datei (die zum Glück schon csv ist) zurückliefert, die ich anfordere; dank richtigem Content-Type usw. ist der Browser auch so gut und öffnet ein Fenster ("Wollen Sie jetzt öffnen oder speichern?"). Soweit so gut.

Nun mein Problem: Wie mache ich das mit den Grafiken, die erst im Applet generiert werden? Hat jemand eine Idee, wie ich mit meinen beschränkten Mitteln weiterkomme???? 

Habe schon darüber nachgedacht, dass Bild im Applet zu erzeugen, an den Web-Server senden, welcher mir dann ähnlich zu Lösung a) das Problem löst. Geht das ? Wenn ja, wie?
Alternativ könnte ich das Bild auch nochmal auf dem Server erzeugen (ist aber eigentlich nicht gewollt; würde aber akzeptiert werden...)

Oder ist es viel einfacher und stehe ich nach langer Arbeit einfach auf dem Schlauch ???????


----------



## Bleiglanz (1. Dez 2005)

"Analog zu a" würde genauso funktionieren, du schicktst das Bild als bytestrom zum server an ein cgi, dieses schickt das ganze mit dem richtigen content-type wieder zurück: ist halt traffic 

b ist natürlich die doppelte Arbeit wenn der Webserver (Apache?) kein Java kennt...


----------



## Sky (1. Dez 2005)

Bleiglanz hat gesagt.:
			
		

> "Analog zu a" würde genauso funktionieren, du schicktst das Bild als bytestrom zum server an ein cgi, dieses schickt das ganze mit dem richtigen content-type wieder zurück: ist halt traffic



ok... aber wie mache ich das genau? Wenn ich die Daten mittels "get" übertrage, dann ist nicht alles QUERY_STRING.

Wenn ich die Daten per "post" übertrage dann sehe ich an der CONTENT_LENGTH, dass die Daten angekommen sind, weiß aber nicht, wie ich die mit einem Shell-Script auslesen kann (read bricht nach bestimmten Zeichen ab)

btw. ich glaub' das hier gehört eher nach "Prog. Allg.", dann das mal einer verschieben?


----------



## Bleiglanz (1. Dez 2005)

get geht natürlich nicht

du musst einen POST Request fabrizieren und dabei einen HTTP-Fileupload simulieren (nicht ganz leicht), das cgi-skript sollte das alles dann wieder aufdröseln

oder POST und das bild als param=<wert> schicken, wobei <wert> der base64-kodierte Bytestrom ist

alles nicht ganz einfach...

was isn dein cgi? ein shell-skript? perl?? php???


----------



## Sky (1. Dez 2005)

hab nur shell-skript


----------



## Sky (1. Dez 2005)

Hi Bleiglanz,

danke für deine Mühe. Habe mir das ganze mal angeschaut. Mein Chefe wollte dann 'ne Aufwandsschätzung und danach war's ihm auch auf einmal nicht mehr so wichtig. ;-)
Wenn die Anforderung wieder aufkommen sollte, so wird die Grafik einmal auf einem Server mittels Java und Cron-Job erzeugt und per scp auf den WebServer gelegt.

Grüsse, Sky


----------

