Danielku15
Erfahrenes Mitglied
Hallo Leute.
Ich bin gerade extrem genervt da mein Projekt nicht so will wie ich. Entweder liegt's daran dass gerne mal meine Änderungen nicht aktualisiert werden oder dass Eclipse meine Breakpoints beim debuggen irgnoriert. Nun denn, zu meinem Problem:
Ich habe eine Reihe von ManagedBeans im Session Scope. (ItemBean, MemberBean,...). Diese sollen benachrichtigt werden sobald sich im ProjectBean der Wert für CurrentProject geändert hat. Dazu habe ich einfach ein Observer-Pattern implementiert welches alle im ProjectBean-Observer registrierten ProjectChangeListener-Clients bei der Wertänderung benachrichtigt.
Jeder Client(Bean) registriert sich selbst im Konstruktor beim Observer. Nun hatte ich jedoch immer das Problem dass im Observer keine Clients verfügbar waren wenn ich das Projekt geändert habe. Nach langen Debug-Versuchen bin ich darauf gestoßen dass das ItemBean und MemberBean erst dann Instanziert werden, sobald das erste Mal darauf zugegriffen wird (was erst nach der Projektänderung und Umleitung auf ein anderes JSPs geschieht) und nicht sobald eine neue Session erzeugt wurde.
Kann ich über eine Eigenschaft in der FacesContext oder ähnliches festlegen dass sobald eine neue Session erzeugt wurde, auch alle zugehörigen Beans sofort erzeugt werden?
Meine Umgebung:
Windows 7 RC1 64bit
IceFaces 1.8.1
JSF 1.2
Tomcat 6.0
Grüße
- Daniel
Ich bin gerade extrem genervt da mein Projekt nicht so will wie ich. Entweder liegt's daran dass gerne mal meine Änderungen nicht aktualisiert werden oder dass Eclipse meine Breakpoints beim debuggen irgnoriert. Nun denn, zu meinem Problem:
Ich habe eine Reihe von ManagedBeans im Session Scope. (ItemBean, MemberBean,...). Diese sollen benachrichtigt werden sobald sich im ProjectBean der Wert für CurrentProject geändert hat. Dazu habe ich einfach ein Observer-Pattern implementiert welches alle im ProjectBean-Observer registrierten ProjectChangeListener-Clients bei der Wertänderung benachrichtigt.
Jeder Client(Bean) registriert sich selbst im Konstruktor beim Observer. Nun hatte ich jedoch immer das Problem dass im Observer keine Clients verfügbar waren wenn ich das Projekt geändert habe. Nach langen Debug-Versuchen bin ich darauf gestoßen dass das ItemBean und MemberBean erst dann Instanziert werden, sobald das erste Mal darauf zugegriffen wird (was erst nach der Projektänderung und Umleitung auf ein anderes JSPs geschieht) und nicht sobald eine neue Session erzeugt wurde.
Kann ich über eine Eigenschaft in der FacesContext oder ähnliches festlegen dass sobald eine neue Session erzeugt wurde, auch alle zugehörigen Beans sofort erzeugt werden?
Meine Umgebung:
Windows 7 RC1 64bit
IceFaces 1.8.1
JSF 1.2
Tomcat 6.0
Grüße
- Daniel