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/07/20 02:21:44 UTC

svn commit: r965688 - in /myfaces/extensions/cdi/trunk/jee-modules: jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/ jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scop...

Author: gpetracek
Date: Tue Jul 20 00:21:44 2010
New Revision: 965688

URL: http://svn.apache.org/viewvc?rev=965688&view=rev
Log:
EXTCDI-1, EXTCDI-2 and EXTCDI-3 workaround for mojarra

Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/TimeoutConversationExpirationEvaluator.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/spi/RedirectHandler.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf2/impl/request/DefaultRedirectHandler.java

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/TimeoutConversationExpirationEvaluator.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/TimeoutConversationExpirationEvaluator.java?rev=965688&r1=965687&r2=965688&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/TimeoutConversationExpirationEvaluator.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/TimeoutConversationExpirationEvaluator.java Tue Jul 20 00:21:44 2010
@@ -36,7 +36,6 @@ class TimeoutConversationExpirationEvalu
 
     public boolean isExpired()
     {
-
         return this.lastAccess == null ||
                 (this.lastAccess.getTime() + this.conversationTimeoutInMs) < System.currentTimeMillis();
     }

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/spi/RedirectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/spi/RedirectHandler.java?rev=965688&r1=965687&r2=965688&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/spi/RedirectHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/spi/RedirectHandler.java Tue Jul 20 00:21:44 2010
@@ -20,11 +20,12 @@ package org.apache.myfaces.extensions.cd
 
 import javax.faces.context.ExternalContext;
 import java.io.IOException;
+import java.io.Serializable;
 
 /**
  * @author Gerhard Petracek
  */
-public interface RedirectHandler
+public interface RedirectHandler extends Serializable
 {
     void sendRedirect(ExternalContext externalContext, String url, String requestIdKey) throws IOException;
 

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf2/impl/request/DefaultRedirectHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf2/impl/request/DefaultRedirectHandler.java?rev=965688&r1=965687&r2=965688&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf2/impl/request/DefaultRedirectHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf2/impl/request/DefaultRedirectHandler.java Tue Jul 20 00:21:44 2010
@@ -22,6 +22,7 @@ import static org.apache.myfaces.extensi
 import static org.apache.myfaces.extensions.cdi.core.api.util.ClassUtils.tryToLoadClassForName;
 
 import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
 import java.io.IOException;
 
 /**
@@ -35,13 +36,15 @@ public class DefaultRedirectHandler exte
 
     public DefaultRedirectHandler()
     {
-        this.useFallback = tryToLoadClassForName("org.apache.myfaces.context.FacesContextFactoryImpl") != null;
+        this.useFallback = tryToLoadClassForName("org.apache.myfaces.context.FacesContextFactoryImpl") == null;
     }
 
     @Override
     public void sendRedirect(ExternalContext externalContext, String url, String requestIdKey) throws IOException
     {
-        if(this.useFallback)
+        if(this.useFallback ||
+                //here we have an ajax nav. - currently it doesn't work in combination with the flash scope
+                FacesContext.getCurrentInstance().getPartialViewContext().isPartialRequest())
         {
             super.sendRedirect(externalContext, url, requestIdKey);
             return;
@@ -49,7 +52,7 @@ public class DefaultRedirectHandler exte
         
         if (requestIdKey != null)
         {
-            externalContext.getFlash().putNow(UUID_ID_KEY, requestIdKey);
+            externalContext.getRequestMap().put(UUID_ID_KEY, requestIdKey);
             externalContext.getFlash().keep(UUID_ID_KEY);
         }