Viele webbasierte Enterprise-Anwendungen werden mit JavaServer Faces (JSF) erstellt. Diese Technologie ermöglicht es, aus einzelnen zustandslosen HTML-Seiten eine zustandsbehaftete Anwendung zu entwickeln, die aus einzelnen JSF-Komponenten besteht, welche für die Darstellung selbst verantwortlich sind. Bei jeder Browser-Anfrage wird der Zustand der Komponenten wiederhergestellt und nach der Verarbeitung wird der neue Zustand persistiert. Die Technologie sieht vor, dass bei der Entwicklung festgelegt wird, ob der Zustand auf dem Client oder auf dem Server gespeichert werden soll. Beide Varianten haben ihre Vor- und Nachteile, auf die ich hier nicht explizit eingehen möchte.
Ein Nachteil soll an dieser Stelle jedoch betrachtet werden: Wird der Zustand der Komponenten auf der Server-Seite (auch ’server-side state saving‘ genannt) vorgehalten, ist es nicht mehr möglich, mit mehreren Browser-Fenstern oder Tabs die Anwendungen zu benutzen – auch wenn die Logik in den Controllern dafür ausgelegt wurde.
weiterlesen