You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2010/12/23 02:48:15 UTC

svn commit: r1052133 - in /myfaces/extensions/cdi/trunk/jee-modules: jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/

Author: gpetracek
Date: Thu Dec 23 01:48:15 2010
New Revision: 1052133

URL: http://svn.apache.org/viewvc?rev=1052133&view=rev
Log:
EXTCDI-92 ignore terminated requests

Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/CodiNavigationHandler.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/CodiNavigationHandler.java

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/CodiNavigationHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/CodiNavigationHandler.java?rev=1052133&r1=1052132&r2=1052133&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/CodiNavigationHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/CodiNavigationHandler.java Thu Dec 23 01:48:15 2010
@@ -33,6 +33,8 @@ public class CodiNavigationHandler exten
 {
     private final NavigationHandler wrapped;
 
+    private final NavigationHandler originalNavigationHandler;
+
     public CodiNavigationHandler(NavigationHandler navigationHandler)
     {
         if(isActivated())
@@ -46,11 +48,19 @@ public class CodiNavigationHandler exten
         {
             this.wrapped = navigationHandler;
         }
+        this.originalNavigationHandler = navigationHandler;
     }
 
     public void handleNavigation(FacesContext context, String fromAction, String outcome)
     {
-        this.wrapped.handleNavigation(context, fromAction, outcome);
+        if(context.getResponseComplete() /*see EXTCDI-92*/)
+        {
+            this.originalNavigationHandler.handleNavigation(context, fromAction, outcome);
+        }
+        else
+        {
+            this.wrapped.handleNavigation(context, fromAction, outcome);
+        }
     }
 
     public boolean isActivated()

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/CodiNavigationHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/CodiNavigationHandler.java?rev=1052133&r1=1052132&r2=1052133&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/CodiNavigationHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/navigation/CodiNavigationHandler.java Thu Dec 23 01:48:15 2010
@@ -69,12 +69,13 @@ public class CodiNavigationHandler exten
 
     public void handleNavigation(FacesContext context, String fromAction, String outcome)
     {
-        if(this.deactivated || isUnhandledExceptionQueued(context))
+        if(this.deactivated || isUnhandledExceptionQueued(context) || context.getRenderResponse() /*see EXTCDI-92*/)
         {
             this.wrapped.handleNavigation(context, fromAction, outcome);
         }
         else
         {
+            //don't refactor it - currently we need the lazy wrapping due to special jsf2 constellations
             getWrappedNavigationHandler().handleNavigation(context, fromAction, outcome);
         }
     }