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 2013/10/18 04:42:15 UTC
svn commit: r1533315 - in /myfaces/core/trunk:
api/src/main/java/javax/faces/component/UIViewRoot.java
impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java
Author: lu4242
Date: Fri Oct 18 02:42:15 2013
New Revision: 1533315
URL: http://svn.apache.org/r1533315
Log:
MYFACES-3747 Implement new JSF 2.2 ViewScope specification (fix save scope when instance implements StateHolder like with the proxy)
Modified:
myfaces/core/trunk/api/src/main/java/javax/faces/component/UIViewRoot.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/UIViewRoot.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/component/UIViewRoot.java?rev=1533315&r1=1533314&r2=1533315&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/UIViewRoot.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/UIViewRoot.java Fri Oct 18 02:42:15 2013
@@ -1431,7 +1431,8 @@ public class UIViewRoot extends UICompon
//No values
return null;
}
- else if (parentSaved == null && _viewScope != null && _viewScope.size() == 0)
+ else if (parentSaved == null && _viewScope != null && _viewScope.size() == 0
+ && !(_viewScope instanceof StateHolder) )
{
//Empty view scope, no values
return null;
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java?rev=1533315&r1=1533314&r2=1533315&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/cdi/view/ViewScopeContextualStorage.java Fri Oct 18 02:42:15 2013
@@ -88,10 +88,13 @@ public class ViewScopeContextualStorage
instanceInfo.setContextualInstance(bean.create(creationalContext));
contextualInstances.put(beanKey, instanceInfo);
- String name = ((Bean<T>) bean).getName();
- if (name != null)
+ if(bean instanceof Bean)
{
- nameBeanKeyMap.put(name, beanKey);
+ String name = ((Bean<T>) bean).getName();
+ if (name != null)
+ {
+ nameBeanKeyMap.put(name, beanKey);
+ }
}
return instanceInfo.getContextualInstance();