Hallo zusammen.
In meiner Anwendung würde ich gerne in jeder View den Tag
verwenden, um zu prüfen, ob der user angemeldet ist und ggf. auf die Login-Seite verzweigen.
Die Methode checkAuthorization() sieht wie folgt aus:
Der Mechanismus funktioniert soweit. Ich benutze auf meiner welcome-Seite primefaces components, die nicht mehr korrekt angezeigt werden, sobald ich diesen Mechanismus aktiviere. Im Anhang befinden sich die Screenshots, wie die Darstellungen mit und ohne den Mechnismus aussehen.
Wird der LifeCycle durch das nav.performNavigation("...") verändert? Es scheint javascript in der generierten View zu fehlen?! Hat jemand auch ähnlich Erfahrungen gesammelt?
In meiner Anwendung würde ich gerne in jeder View den Tag
Code:
<f:event type="preRenderView" listener="#{loginControl.checkAuthorization}" />
verwenden, um zu prüfen, ob der user angemeldet ist und ggf. auf die Login-Seite verzweigen.
Die Methode checkAuthorization() sieht wie folgt aus:
Code:
public void checkAuthorization(ComponentSystemEvent evt)
{
FacesContext ctx = FacesContext.getCurrentInstance();
ConfigurableNavigationHandler nav = (ConfigurableNavigationHandler)ctx.getApplication().getNavigationHandler();
// navigate to login-screen
if(this.user==null){
nav.performNavigation("login");
} else {
nav.performNavigation("welcome");
}
}
Der Mechanismus funktioniert soweit. Ich benutze auf meiner welcome-Seite primefaces components, die nicht mehr korrekt angezeigt werden, sobald ich diesen Mechanismus aktiviere. Im Anhang befinden sich die Screenshots, wie die Darstellungen mit und ohne den Mechnismus aussehen.
Wird der LifeCycle durch das nav.performNavigation("...") verändert? Es scheint javascript in der generierten View zu fehlen?! Hat jemand auch ähnlich Erfahrungen gesammelt?