You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by so...@apache.org on 2008/03/07 01:21:07 UTC
svn commit: r634476 - in
/myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload:
ActionUploadRequestWrapper.java FileUploadConfiguratorImpl.java
Author: sobryan
Date: Thu Mar 6 16:21:05 2008
New Revision: 634476
URL: http://svn.apache.org/viewvc?rev=634476&view=rev
Log:
TRINIDAD-995: FileUpload sets render parameters in portal
* Removed the call to setRenderParameter
* Added a Portlet Bridge annotation to the "applied flag"
that will not be preserved between requests. This will
be needed for ResourceRequest's..
Modified:
myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/ActionUploadRequestWrapper.java
myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/FileUploadConfiguratorImpl.java
Modified: myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/ActionUploadRequestWrapper.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/ActionUploadRequestWrapper.java?rev=634476&r1=634475&r2=634476&view=diff
==============================================================================
--- myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/ActionUploadRequestWrapper.java (original)
+++ myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/ActionUploadRequestWrapper.java Thu Mar 6 16:21:05 2008
@@ -51,9 +51,6 @@
_extractedParams.putAll(params);
_encoding = super.getCharacterEncoding();
-
- //add these params to the render request
- _response.setRenderParameters(_extractedParams);
}
/**
Modified: myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/FileUploadConfiguratorImpl.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/FileUploadConfiguratorImpl.java?rev=634476&r1=634475&r2=634476&view=diff
==============================================================================
--- myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/FileUploadConfiguratorImpl.java (original)
+++ myfaces/trinidad/branches/1.2.6.1-branch/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/config/upload/FileUploadConfiguratorImpl.java Thu Mar 6 16:21:05 2008
@@ -25,6 +25,9 @@
import java.util.Map;
import javax.faces.context.ExternalContext;
+
+import javax.portlet.faces.annotation.ExcludeFromManagedRequestScope;
+
import javax.servlet.http.HttpServletRequest;
import org.apache.myfaces.trinidad.config.Configurator;
@@ -74,7 +77,7 @@
@SuppressWarnings("unchecked")
static public void apply(ExternalContext context)
{
- context.getRequestMap().put(_APPLIED, Boolean.TRUE);
+ context.getRequestMap().put(_APPLIED, AppliedClass.APPLIED);
}
/* (non-Javadoc)
@@ -207,6 +210,8 @@
{
if(!isApplied(externalContext))
{
+ //TODO: For JSR-286, we'll also need to handle ResourceRequest
+ // so that FileUploads in a PPR will work correctly.
if(!ExternalContextUtils.isPortlet(externalContext))
{
externalContext.setRequest(new UploadRequestWrapper(
@@ -215,12 +220,12 @@
}
else if(ExternalContextUtils.isAction(externalContext))
{
- /*
- * We only need to do this if we have an action request. Why?
- * Because durring the ActionRequest, the wrapper will set the
- * RenderParameters. This is a cool thing because subsequent
- * render requests will retain these parameters for us.
- */
+ // We do not need to worry about render request. According to
+ // "Portlet 1.0 Bridge Specification for JavaServer Faces 1.2"
+ // section 3.2, parameters are not preserved between action and
+ // render. IF the preserveActionParameters setting is set, the
+ // current R.I. pulls these off of the external context. So
+ // making sure that they are set correctly here should be sufficient.
externalContext.setRequest(new ActionUploadRequestWrapper(externalContext,
addedParams));
}
@@ -276,5 +281,13 @@
static private final String _APPLIED = FileUploadConfiguratorImpl.class.getName()+".APPLIED";
static private final TrinidadLogger _LOG = TrinidadLogger.createTrinidadLogger(FileUploadConfiguratorImpl.class);
static private final String _PARAMS = FileUploadConfiguratorImpl.class.getName()+".PARAMS";
+
private long _maxAllowedBytes = 1L << 27;
+
+ //This class will disappear between phases of the Request in a portlet environment
+ @ExcludeFromManagedRequestScope
+ private static class AppliedClass
+ {
+ public static final AppliedClass APPLIED = new AppliedClass();
+ }
}