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 2011/04/16 22:31:05 UTC

svn commit: r1094047 - in /myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security: SecurityAwareViewHandler.java StateCloner.java

Author: gpetracek
Date: Sat Apr 16 20:31:05 2011
New Revision: 1094047

URL: http://svn.apache.org/viewvc?rev=1094047&view=rev
Log:
EXTCDI-167 preserve view-parameters

Removed:
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security/StateCloner.java
Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security/SecurityAwareViewHandler.java

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security/SecurityAwareViewHandler.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/security/SecurityAwareViewHandler.java?rev=1094047&r1=1094046&r2=1094047&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security/SecurityAwareViewHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/security/SecurityAwareViewHandler.java Sat Apr 16 20:31:05 2011
@@ -21,7 +21,7 @@ package org.apache.myfaces.extensions.cd
 import javax.faces.application.ViewHandler;
 import javax.faces.component.UIViewRoot;
 import javax.faces.context.FacesContext;
-import java.io.Serializable;
+import java.util.HashMap;
 import java.util.Map;
 
 /**
@@ -52,17 +52,18 @@ public class SecurityAwareViewHandler
         Map<String, Object> viewMap = null;
         if(originalViewRoot != null)
         {
-            viewMap = originalViewRoot.getViewMap(false);
+            Map<String, Object> originalViewMap = originalViewRoot.getViewMap(false);
 
-            if(viewMap instanceof Serializable)
+            if(originalViewMap != null && !originalViewMap.isEmpty())
             {
-                //noinspection unchecked
-                viewMap = StateCloner.clone((Serializable)viewMap, Map.class);
+                viewMap = new HashMap<String, Object>();
+                viewMap.putAll(originalViewMap);
             }
         }
+
         newViewRoot = super.createView(context, viewId);
 
-        if(viewMap instanceof Serializable)
+        if(viewMap != null)
         {
             originalViewRoot.getViewMap(true).putAll(viewMap);
         }