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 2009/10/02 02:16:38 UTC

svn commit: r820849 - in /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces: lifecycle/DefaultRestoreViewSupport.java lifecycle/RestoreViewExecutor.java view/facelets/FaceletViewDeclarationLanguage.java

Author: lu4242
Date: Fri Oct  2 00:16:37 2009
New Revision: 820849

URL: http://svn.apache.org/viewvc?rev=820849&view=rev
Log:
MYFACES-2365 DefaultRestoreViewSupport.calculateViewId should not call ViewHandler.deriveViewId

Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/DefaultRestoreViewSupport.java
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/DefaultRestoreViewSupport.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/DefaultRestoreViewSupport.java?rev=820849&r1=820848&r2=820849&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/DefaultRestoreViewSupport.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/DefaultRestoreViewSupport.java Fri Oct  2 00:16:37 2009
@@ -126,9 +126,7 @@
             throw new FacesException("Could not determine view id.");
         }
 
-        // JSF 2.0: We need to resolve which extension does this viewId holds, in other words
-        // sometimes convert from .jsf to .xhtml
-        return facesContext.getApplication().getViewHandler().deriveViewId(facesContext, viewId);
+        return viewId;
     }
 
     public boolean isPostback(FacesContext facesContext)

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java?rev=820849&r1=820848&r2=820849&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/lifecycle/RestoreViewExecutor.java Fri Oct  2 00:16:37 2009
@@ -122,7 +122,7 @@
                 log.trace("Request is not a postback. New UIViewRoot will be created");
             
             ViewDeclarationLanguage vdl = viewHandler.getViewDeclarationLanguage(facesContext, 
-                    viewId);
+                    viewHandler.deriveViewId(facesContext, viewId));
             
             if (vdl != null)
             {

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java?rev=820849&r1=820848&r2=820849&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java Fri Oct  2 00:16:37 2009
@@ -1652,7 +1652,9 @@
     private class FaceletViewMetadata extends ViewMetadataBase
     {
         /**
+         * Constructor
          * 
+         * Note that this viewId is not the one after calculateViewId() method
          */
         public FaceletViewMetadata(String viewId)
         {
@@ -1692,7 +1694,10 @@
 
                 String viewId = getViewId();
                 UIViewRoot view = createView(context, viewId);
-                Facelet facelet = _getViewMetadataFacelet(viewId);
+                // inside createView(context,viewId), calculateViewId() is called and
+                // the result is stored inside created UIViewRoot, so we can safely take the derived
+                // viewId from there.
+                Facelet facelet = _getViewMetadataFacelet(view.getViewId());
                 facelet.apply(context, view);
 
                 return view;