Sagen wir, ich habe eine @ViewScoped Bean hinter meiner aktuellen Seite A. Jetzt navigiert der Benutzer auf Seite B über eine normale Anfrage, sagen wir zu www.google.com. Wenn der Benutzer auf die Zurück-Schaltfläche des Browsers klickt, möchte ich das @ViewScope der vorherigen Seite wiederherstellen, so dass es genau so aussieht, wie es übrig war. Ist das irgendwie möglich?Wie kann ViewScoped Bean wiederhergestellt werden, wenn der Benutzer auf die Schaltfläche Zurück klickt?
Ich möchte nicht meine Seite A @SessionScoped machen, so dass die Backing-Beans einander nicht stören, wenn sie in zwei Browser-Tabs geöffnet werden.
Im Falle von Ajaxical Anfragen, gibt es keine Frage der Wiederherstellung - JSF oder anders. In anderen Fällen, wenn die Seitennavigation über HTTP-POST-Anfragen erfolgt, ist das gesamte Konzept der Seitennavigation verworren und muss neu überdacht werden, indem die erforderlichen Anforderungsparameter unter Verwendung der HTTP-GET-Anforderung (Seitennavigation mit entsprechenden Lesezeichen-URLs in jedem Webprojekt) bereitgestellt werden erfolgt über die HTTP GET-Anfrage). – Tiny
Behalten Sie Werte in @PreDestroy() bei und rufen Sie sie in der Methode @PostContruct() zurück. Oder überprüfen Sie diesen Link https://StackOverflow.com/questions/1282251/saving-data-to-session-in-jsf, um zu sehen, wie sie in der Sitzung gespeichert werden. – stakahop