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 2011/05/19 21:14:13 UTC

svn commit: r1125064 - /myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java

Author: lu4242
Date: Thu May 19 19:14:13 2011
New Revision: 1125064

URL: http://svn.apache.org/viewvc?rev=1125064&view=rev
Log:
MYFACES-3152 javax.faces.application.StateManager default implementation for writeState and saveSerializedView needs to be implemented

Modified:
    myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java

Modified: myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java?rev=1125064&r1=1125063&r2=1125064&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/application/StateManager.java Thu May 19 19:14:13 2011
@@ -102,6 +102,16 @@ public abstract class StateManager
      */
     public StateManager.SerializedView saveSerializedView(FacesContext context)
     {
+        Object savedView = saveView(context);
+        if (savedView != null && savedView instanceof Object[])
+        {
+            Object[] structureAndState = (Object[]) savedView;
+            if (structureAndState.length == 2)
+            {
+                return new StateManager.SerializedView(structureAndState[0], structureAndState[1]);
+            }
+        }
+        
         return null;
     }
 
@@ -175,7 +185,10 @@ public abstract class StateManager
     public void writeState(FacesContext context, StateManager.SerializedView state)
         throws IOException
     {
-        // default impl does nothing as per JSF 1.2 javadoc
+        if (state != null)
+        {
+            writeState(context, new Object[]{state.getStructure(), state.getState()});
+        }
     }
 
     /**