You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2010/06/06 04:09:51 UTC

svn commit: r951802 - in /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces: application/jsp/JspStateManagerImpl.java renderkit/html/HtmlResponseStateManager.java view/facelets/DefaultFaceletsStateManagementStrategy.java

Author: lu4242
Date: Sun Jun  6 02:09:50 2010
New Revision: 951802

URL: http://svn.apache.org/viewvc?rev=951802&view=rev
Log:
document web config params better and sync code

Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/jsp/JspStateManagerImpl.java
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/jsp/JspStateManagerImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/jsp/JspStateManagerImpl.java?rev=951802&r1=951801&r2=951802&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/jsp/JspStateManagerImpl.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/jsp/JspStateManagerImpl.java Sun Jun  6 02:09:50 2010
@@ -267,7 +267,7 @@ public class JspStateManagerImpl extends
         {
             Integer serverStateId = getServerStateId((Object[]) responseStateManager.getState(facesContext, uiViewRoot.getViewId()));
 
-            Object[] stateObj = (Object[]) getSerializedViewFromServletSession(facesContext, uiViewRoot.getViewId(), serverStateId);
+            Object[] stateObj = (Object[])( (serverStateId == null)? null : getSerializedViewFromServletSession(facesContext, uiViewRoot.getViewId(), serverStateId) );
             if (stateObj == null)
             {
                  log.severe("No serialized view found in server session!");
@@ -342,7 +342,7 @@ public class JspStateManagerImpl extends
             //reconstruct tree structure from ServletSession
             Integer serverStateId = getServerStateId((Object[]) responseStateManager.getState(facesContext, viewId));
 
-            Object[] stateObj = (Object[]) getSerializedViewFromServletSession(facesContext, viewId, serverStateId);
+            Object[] stateObj = (Object[])( (serverStateId == null)? null : getSerializedViewFromServletSession(facesContext, viewId, serverStateId) );
             if (stateObj == null)
             {
                 if (log.isLoggable(Level.FINE)) log.fine("Exiting restoreTreeStructure - No serialized view found in server session!");
@@ -405,7 +405,7 @@ public class JspStateManagerImpl extends
 
                 Integer serverStateId = getServerStateId((Object[]) responseStateManager.getState(facesContext, viewId));
 
-                state = getSerializedViewFromServletSession(facesContext, viewId, serverStateId);
+                state = (serverStateId == null) ? null : getSerializedViewFromServletSession(facesContext, viewId, serverStateId);
             }
 
             if (state != null) {

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java?rev=951802&r1=951801&r2=951802&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/html/HtmlResponseStateManager.java Sun Jun  6 02:09:50 2010
@@ -212,6 +212,15 @@ public class HtmlResponseStateManager ex
 
         Object[] savedState = (Object[])StateUtils.reconstruct((String)encodedState, facesContext.getExternalContext());
 
+
+        if (savedState == null)
+        {
+            if (log.isLoggable(Level.FINEST)) {
+                log.finest("No saved state");
+            }
+            return null;
+        }
+        
         String restoredViewId = (String)savedState[VIEWID_PARAM];
 
         if (restoredViewId == null)

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java?rev=951802&r1=951801&r2=951802&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java Sun Jun  6 02:09:50 2010
@@ -139,10 +139,16 @@ public class DefaultFaceletsStateManagem
         {
             Integer serverStateId = helper.getServerStateId((Object[]) manager.getState(context, viewId));
 
-            state = (Object[]) helper.getSerializedViewFromServletSession(context, viewId, serverStateId);
+            state = (Object[]) ((serverStateId == null) ? null : helper.getSerializedViewFromServletSession(context, viewId, serverStateId));
         }
         
-        if (state != null && state[1] instanceof Object[])
+        if (state == null)
+        {
+            //No state could be restored, return null causing ViewExpiredException
+            return null;
+        }
+        
+        if (state[1] instanceof Object[])
         {
             Object[] fullState = (Object[]) state[1]; 
             view = (UIViewRoot) internalRestoreTreeStructure((TreeStructComponent)fullState[0]);