You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by st...@apache.org on 2011/11/04 18:14:31 UTC

svn commit: r1197673 - /myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/conversation/JsfRestParameters.java

Author: struberg
Date: Fri Nov  4 17:14:31 2011
New Revision: 1197673

URL: http://svn.apache.org/viewvc?rev=1197673&view=rev
Log:
EXTCDI-232 fix NPE when view == null

Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/conversation/JsfRestParameters.java

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/conversation/JsfRestParameters.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/scope/conversation/JsfRestParameters.java?rev=1197673&r1=1197672&r2=1197673&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/conversation/JsfRestParameters.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/conversation/JsfRestParameters.java Fri Nov  4 17:14:31 2011
@@ -25,6 +25,7 @@ import org.apache.myfaces.extensions.cdi
 
 import javax.enterprise.event.Observes;
 import javax.faces.component.UIViewParameter;
+import javax.faces.component.UIViewRoot;
 import javax.faces.context.FacesContext;
 import javax.faces.event.PhaseEvent;
 import javax.faces.view.ViewMetadata;
@@ -82,7 +83,12 @@ public class JsfRestParameters extends R
             return false;
         }
 
-        String viewId = facesContext.getViewRoot().getViewId();
+        String viewId = getViewId(facesContext);
+
+        if (viewId == null)
+        {
+            return false;
+        }
 
         String currentViewParams = getViewParams(facesContext, viewId);
         String oldViewParams = viewParametersForViewId.get(viewId);
@@ -169,7 +175,27 @@ public class JsfRestParameters extends R
             return;
         }
 
-        String viewId = facesContext.getViewRoot().getViewId();
-        viewParametersForViewId.put(viewId, getViewParams(facesContext, viewId));
+        String viewId = getViewId(facesContext);
+        if (viewId != null)
+        {
+            viewParametersForViewId.put(viewId, getViewParams(facesContext, viewId));
+        }
+    }
+
+
+    private String getViewId(FacesContext facesContext)
+    {
+        String viewId = null;
+        if (facesContext != null)
+        {
+            UIViewRoot viewRoot = facesContext.getViewRoot();
+            if (viewRoot != null)
+            {
+                viewId = viewRoot.getViewId();
+            }
+        }
+
+        return viewId;
     }
+
 }