JSF Probleme beim redirect im ExceptionHandler

stormqueen

Mitglied
Hallo,

ich habe mir einen eigenen ExceptionHandler zum behandeln von NullPointerExceptions geschrieben und eingebunden. Dieser soll beim Auftreten einer NullPointerException auf eine Fehlerseite weiterleiten. Hier der entsprechende Ausschnitt:

Java:
FacesContext fc = FacesContext.getCurrentInstance();
NavigationHandler nav = fc.getApplication().getNavigationHandler();
nav.handleNavigation(fc, null, "error" );

Auf einer test.xhtml Seite wird nun eine Bean angesprochen:

Java:
<h:outputText value="#{requestTestBean.firstname}" />

In dem entsprechenden getter wird eine NullPointerException erzwungen:
Java:
Object x = null;
x.toString()

Der redirect für dieses kleine Beispiel funktioniert auch prima. Füge ich jedoch mehr Content auf der Seite ein (z.B. ein Menü mit vielen Einträgen und Icons) funktioniert der redirect nicht mehr und ich bekomme die Meldung: "response already committed".

Nun zu meiner Frage: Wieso ist der Response im ExceptionHandler bereits committed? Und wieso ist er das nicht wenn ich nur wenig Content auf der Seite habe? Gibt es vielleicht irgendeinen context-param oder ähnliches, der dieses verhindert? ???:L
 

JimPanse

Bekanntes Mitglied
Ich glaube du musst den Lebenszyklus von JSF "kurz" schließen d.h.

beim auftreten einer NPE

Java:
FacesContext.getCurrentInstance().renderResponse();

aufrufen. Damit werden alle restlichen Phasen des Lebenszyklus unterbrochen und direkt das Rendering (6.Phase -> RenderResponse) angestoßen!

Grüße
 

stormqueen

Mitglied
Ich bin zu dem Zeitpunkt wenn die NullPointerException in dem ExceptionHandler ankommt schon in der RenderResponse Phase. Das ist genau das Problem.

Tritt die Exception in einer vorherigen Phase auf (z.B. InvokeApplication) ist der redirect kein Problem.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Probleme beim installieren von WebBeans Web Tier 2
H Probleme beim Aufrufen von Java- oder Servlet-Methoden aus Javascript Web Tier 2
K [GWT] Probleme beim asynchronen Methodenaufruf mit GWT-RPC Web Tier 8
pkm Probleme mit einem AJAX-Call in einem dynamischen Webprojekt Web Tier 15
M JSF Probleme bei Navigation mit Verzeichnisswechsel Web Tier 2
W JSF Probleme mit Data Table Web Tier 8
W JSF Probleme mit Zugriff zur Managed Bean Web Tier 11
G Probleme mit Java + Tomcat | Cannot switch on a value of type String for source level below 1.7 Web Tier 8
F JSF Probleme mit OverlayPanel Web Tier 0
H Frameset durch Tabelle ersetzten - Probleme mit jsp:include Web Tier 3
xehpuk JSF URL-Encoding-Probleme bei <h:link> (Mojarra) Web Tier 4
M ejb @Remote macht probleme Web Tier 10
S JSF SelectOneMenu - Probleme mit AJAX Web Tier 6
W Probleme mit Expression language ? Web Tier 13
P JSF Datenbank Probleme (Limit, Wiederholung) Web Tier 8
J JSF JavaScript Probleme zwischen Tomahawk und Tiles!? Web Tier 2
B Probleme mit h:selectOneRadio Web Tier 2
T DWR - Probleme mit Konfiguration Web Tier 13
W JSF MyFaces Tomahawk Probleme Web Tier 4
G Probleme mit EclipseLink und Java.util.Date Web Tier 3
P JSF 1.2 Navigation probleme Web Tier 2
D Probleme mit Tomcat Web Tier 3
M Tomcat 6 Umlaut Probleme Web Tier 2
D Seam Example Probleme Web Tier 2
C Probleme mit JSPs in Unterverzeichnissen Web Tier 4
A [PrimeFaces] dataTable mit paginator Probleme Web Tier 2
0 JSF: css einbinden - Probleme Web Tier 2
M iframe probleme Web Tier 2
B Probleme mit RichFaces Web Tier 2
O struts2 - Probleme mit parametrisierten URLs Web Tier 5
E Probleme mit GWT & MySQL Web Tier 3
G Probleme mit Ajax Login (jsp) Web Tier 5
S Tomcat / Eclipse Probleme Web Tier 2
B Probleme mit <jsp:include page=""/> und Laufzeit Web Tier 7
P Zurück-Button des Browsers macht Probleme Web Tier 9
O Struts2: Probleme mit Links aus Packages raus Web Tier 9
A JSF+Glassfish: Probleme mit Managed Bean Web Tier 2
S Probleme mit den Nav_rules und HTML code Web Tier 2
D Probleme mit ServletRequest Web Tier 14
G Probleme mit Tomcat Web Tier 14
E RichFaces 3.2.1 Probleme Web Tier 4
W JSTL macht Probleme Web Tier 6
W JavaBeans class="" macht Probleme Web Tier 2
A Time-Out Probleme Web Tier 21
B Probleme mit Marquee Tag Web Tier 3
pkm Problem beim Import eines dynamischen Webprojekts als .zip Web Tier 2
Rudolf Glassfish stoppen beim Start ALLE Applikationen zu deployen Web Tier 3
T JSF Primefaces beim öffnen eines p:dialog wird eine neue View ManagedBean erstellt Web Tier 2
M Exception beim Erstellen einer Query Web Tier 9
M JSP Problem beim deployen auf Tomcat Web Tier 2
H JSP Class not found beim Applet-Start Web Tier 4
B JSP Warning [unchecked] beim Build von JSP Web Tier 5
I Beim zurück-Link wird immer ein Request ausgeführt Web Tier 5
Spin JSP Fehler beim casten , why? Web Tier 6
R Fehler 1053 beim Beenden von Tomcat Web Tier 25
A Tomcat: beim Start des Servers einmalige Aktion aufrufen (Problem gelöst) Web Tier 2
F Fehler beim erstellen des EJB - Moduls! Web Tier 4
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9
D Redirect führt zu seltsamen CSS-Verhalten Web Tier 8
A redirect mit servlet-mapping in web.xml Web Tier 4
S JSF Login mit redirect Web Tier 1
J JSF Kein Methodenaufruf mit Button möglich durch PhaseListener (redirect) Problem? Web Tier 2
J JSF Redirect aufgrund expression Bedingung Web Tier 2
I Redirect im Phase Listener Web Tier 6
N Wie mache ich in einer xhtml (JSF) einen redirect? Web Tier 3
M JFS 2 / 403 forbidden - redirect Web Tier 2
E CSS wird nach RequestDispatcher.redirect nicht mehr geladen Web Tier 7
F Redirect nach Aufruf einer JSP Web Tier 5

Ähnliche Java Themen

Neue Themen


Oben