Du willst es ganz genau haben, na gut
Es handelt sich bei der Anwendung um die Umsetzung eines in COBOL geschriebenen Programms, das jetzt als WebAnwendung in einem Intranet umgesetzt wird. Programmiert wird das ganze in JAVA(Servlets), JAVA WEB SERVICES, Jakarta Struts, JSP, XML, XSLT, .... Und zwar nimmt dieses Programm Kontakt auf mit einer Anwendung, die sich auf einem anderen Server im Intranet befindet. Dabei werden ständig Daten zwischen diesen Anwendungen geschoben.... usw.
Wie kann es anders sein, werden natürlich einige Sessions geöffnet, die sauber geschlossen werden müssen. Da sind wir nun wieder bei unsrem Problem. Schließt der User die Anwendung, wird die Session nicht sauber abgeschlossen, der Vorgang wird also abgebrochen. Da die Anwendung aber 1:1 zu der damaligen Cobol-Anwendung sein muss, darf dies nicht geschehen. Es MUSS ein sauberer Abschluss sein.
Die JS-Funktion onunload() hört sich da schon sehr gut an, wenn es darum geht, das Schließen des Fensters, sagen wir mal zu verhindern. Es würde dann eine JAVA-Funktion hinterlegt werden, die eine entsprechende Warnmeldung und diverse andere Aktivitäten ausüben wird(genaueres würde den Rahmen sprengen).
Problem hierbei (onunload()) ist dann aber, das die Methode auch bei einem Submit reagiert, sicher ich könnte hier eine Abfrage starten, ob ein Submit ausgeführt worden ist, jedoch befinden sich auf den jeweiligen JSP-Seiten duzende von Submits, und die Anzahl der Seiten erreicht mittlerweile die 450er Grenze. (Die JSPs werden übrigens mit XSLT und XML generiert).
Sehr einfach würde eine einfache JS-Funktion sein, die ich einbinden könnte ohne die Generierung der JSP-Seiten umändern zu müssen!
Ich müsste nur die Sumits abfangen, da sich keine Links, keine Symbolleiste in der Anwendung befinden. Auch sämtliche Tasten und Tastenkombinationen sind bereits deaktiviert (Backspace, F-Tasten, Return, Strg, Tab, Alt + F4, Windows + M bzw. D, usw.)
Gibt es da jetzt eine Lösung zu???