[richfaces-svn-commits] JBoss Rich Faces SVN: r11958 - in trunk: framework/impl/src/main/java/org/ajax4jsf/webapp and 4 other directories.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Sun Dec 21 11:23:06 EST 2008


Author: nbelaevski
Date: 2008-12-21 11:23:05 -0500 (Sun, 21 Dec 2008)
New Revision: 11958

Added:
   trunk/framework/impl/src/main/java/org/richfaces/component/FileUploadConstants.java
Modified:
   trunk/framework/impl/src/main/java/org/ajax4jsf/request/MultipartRequest.java
   trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java
   trunk/ui/fileUpload/src/main/java/org/richfaces/component/UIFileUpload.java
   trunk/ui/fileUpload/src/main/java/org/richfaces/renderkit/FileUploadRendererBase.java
   trunk/ui/fileUpload/src/main/templates/org/richfaces/fileUpload.jspx
Log:
https://jira.jboss.org/jira/browse/RF-4906

Modified: trunk/framework/impl/src/main/java/org/ajax4jsf/request/MultipartRequest.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/request/MultipartRequest.java	2008-12-21 15:42:19 UTC (rev 11957)
+++ trunk/framework/impl/src/main/java/org/ajax4jsf/request/MultipartRequest.java	2008-12-21 16:23:05 UTC (rev 11958)
@@ -44,9 +44,9 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequestWrapper;
 
-import org.ajax4jsf.Filter;
 import org.ajax4jsf.exception.FileUploadException;
 import org.ajax4jsf.webapp.BaseXMLFilter;
+import org.richfaces.component.FileUploadConstants;
 import org.richfaces.model.UploadItem;
 
 /**
@@ -524,7 +524,7 @@
 	@SuppressWarnings("unchecked")
 	private Map<String, Object> getProgressData() {
 		percentMap = (Map<String, Object>) getSession().getAttribute(
-				Filter.PERCENT_BEAN_NAME);
+				FileUploadConstants.PERCENT_BEAN_NAME);
 		return percentMap;
 	}
 

Modified: trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java	2008-12-21 15:42:19 UTC (rev 11957)
+++ trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/BaseFilter.java	2008-12-21 16:23:05 UTC (rev 11958)
@@ -52,6 +52,7 @@
 import org.ajax4jsf.resource.InternetResourceService;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.richfaces.component.FileUploadConstants;
 
 /**
  * Base class for request processing filters, with convert Htmp content to XML
@@ -133,25 +134,7 @@
 	/** Multipart request start */
 	public static final String MULTIPART = "multipart/";
 
-	/** Session bean name where multipart requests map will be stored */
-	public static final String REQUESTS_SESSIONS_BEAN_NAME = "_richfaces_upload_sessions";
-
-	/** Session bean name where progress bar's percent map will be stored */
-	public static final String PERCENT_BEAN_NAME = "_richfaces_upload_percents";
-
 	/**
-	 * Request parameter that indicates if multipart request forced by rich file
-	 * upload component
-	 */
-	public static final String UPLOAD_FILES_ID = "_richfaces_upload_uid";
-
-	/** Session bean name to store max files count allowed to upload */
-	public static final String UPLOADED_COUNTER = "_richfaces_uploaded_file_counter";
-	
-	/** Request parameter name indicated that file was uploaded by RF component */
-	public static final String FILE_UPLOAD_INDICATOR = "_richfaces_upload_file_indicator";
-
-	/**
 	 * Request parameter that allow to send HTTP error instead of html message
 	 */
 	public static final String SEND_HTTP_ERROR = "_richfaces_send_http_error";
@@ -265,7 +248,7 @@
 		HttpSession session = request.getSession(false);
 		
 		if (session != null) {
-			Map<String, Integer> map = (Map<String, Integer>) session.getAttribute(UPLOADED_COUNTER);
+			Map<String, Integer> map = (Map<String, Integer>) session.getAttribute(FileUploadConstants.UPLOADED_COUNTER);
 
 			if (map != null) {
 				String id = idParameter;
@@ -335,7 +318,7 @@
 		HttpServletRequest httpRequest = (HttpServletRequest) request;
 		
 		Map<String, String> queryParamMap = parseQueryString(httpRequest.getQueryString());
-		String uid = queryParamMap.get(UPLOAD_FILES_ID);
+		String uid = queryParamMap.get(FileUploadConstants.UPLOAD_FILES_ID);
 
 		if (uid != null) {
 
@@ -362,15 +345,15 @@
 
 						HttpSession session = httpRequest.getSession();
 						synchronized (session) {
-							sessionsMap = (Map<String, MultipartRequest>) session.getAttribute(REQUESTS_SESSIONS_BEAN_NAME);
-							percentMap = (Map<String, Object>) session.getAttribute(PERCENT_BEAN_NAME);
+							sessionsMap = (Map<String, MultipartRequest>) session.getAttribute(FileUploadConstants.REQUESTS_SESSIONS_BEAN_NAME);
+							percentMap = (Map<String, Object>) session.getAttribute(FileUploadConstants.PERCENT_BEAN_NAME);
 							if (sessionsMap == null) {
 								sessionsMap = Collections.synchronizedMap(new HashMap<String, MultipartRequest>());
-								session.setAttribute(REQUESTS_SESSIONS_BEAN_NAME, sessionsMap);
+								session.setAttribute(FileUploadConstants.REQUESTS_SESSIONS_BEAN_NAME, sessionsMap);
 							}
 							if (percentMap == null) {
 								percentMap = new HashMap<String, Object>();
-								session.setAttribute(PERCENT_BEAN_NAME, percentMap);
+								session.setAttribute(FileUploadConstants.PERCENT_BEAN_NAME, percentMap);
 							}
 						}
 

Added: trunk/framework/impl/src/main/java/org/richfaces/component/FileUploadConstants.java
===================================================================
--- trunk/framework/impl/src/main/java/org/richfaces/component/FileUploadConstants.java	                        (rev 0)
+++ trunk/framework/impl/src/main/java/org/richfaces/component/FileUploadConstants.java	2008-12-21 16:23:05 UTC (rev 11958)
@@ -0,0 +1,53 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package org.richfaces.component;
+
+/**
+ * @author Nick Belaevski
+ * @since 3.3.0
+ */
+
+public final class FileUploadConstants {
+
+	/**
+	 * Request parameter that indicates if multipart request forced by rich file
+	 * upload component
+	 */
+	public static final String UPLOAD_FILES_ID = "_richfaces_upload_uid";
+
+	/** Session bean name to store max files count allowed to upload */
+	public static final String UPLOADED_COUNTER = "_richfaces_uploaded_file_counter";
+	
+	/** Request parameter name indicated that file was uploaded by RF component */
+	public static final String FILE_UPLOAD_INDICATOR = "_richfaces_upload_file_indicator";
+
+	/** Session bean name where multipart requests map will be stored */
+	public static final String REQUESTS_SESSIONS_BEAN_NAME = "_richfaces_upload_sessions";
+
+	/** Session bean name where progress bar's percent map will be stored */
+	public static final String PERCENT_BEAN_NAME = "_richfaces_upload_percents";
+
+	private FileUploadConstants() {
+		//private constructor
+	}
+
+}

Modified: trunk/ui/fileUpload/src/main/java/org/richfaces/component/UIFileUpload.java
===================================================================
--- trunk/ui/fileUpload/src/main/java/org/richfaces/component/UIFileUpload.java	2008-12-21 15:42:19 UTC (rev 11957)
+++ trunk/ui/fileUpload/src/main/java/org/richfaces/component/UIFileUpload.java	2008-12-21 16:23:05 UTC (rev 11958)
@@ -37,7 +37,6 @@
 import javax.faces.el.MethodBinding;
 import javax.faces.event.FacesEvent;
 
-import org.ajax4jsf.Filter;
 import org.ajax4jsf.context.AjaxContext;
 import org.ajax4jsf.context.AjaxContextImpl;
 import org.ajax4jsf.request.MultipartRequest;
@@ -78,7 +77,7 @@
     private void setupProgressBarValueExpression(FacesContext context, String uid) {
 	    FileUploadRendererBase renderer = (FileUploadRendererBase)this.getRenderer(context);
 	    UIComponent progressBar = renderer.getProgressBar(context, this);
-	    String percentExpression = Filter.PERCENT_BEAN_NAME + "['"+uid+"']";
+	    String percentExpression = FileUploadConstants.PERCENT_BEAN_NAME + "['"+uid+"']";
 		ExpressionFactory expressionFactory = context.getApplication().getExpressionFactory();
 		ELContext elContext = context.getELContext();
 		
@@ -199,12 +198,12 @@
             
 			if (actionString != null && requestParameterMap.containsKey(this.getClientId(facesContext))) {
                 AjaxContext ajaxContext = AjaxContextImpl.getCurrentInstance(facesContext);
-                String uid = requestParameterMap.get(Filter.UPLOAD_FILES_ID);
+                String uid = requestParameterMap.get(FileUploadConstants.UPLOAD_FILES_ID);
 
                 Map<String, Object> sessionMap = externalContext.getSessionMap();
 
                 Map<String, MultipartRequest> sessions = (Map<String, MultipartRequest>) sessionMap
-                        .get(Filter.REQUESTS_SESSIONS_BEAN_NAME);
+                        .get(FileUploadConstants.REQUESTS_SESSIONS_BEAN_NAME);
                 if (sessions != null) {
                     MultipartRequest multipartRequest = sessions.get(uid);
                     if (multipartRequest != null) {

Modified: trunk/ui/fileUpload/src/main/java/org/richfaces/renderkit/FileUploadRendererBase.java
===================================================================
--- trunk/ui/fileUpload/src/main/java/org/richfaces/renderkit/FileUploadRendererBase.java	2008-12-21 15:42:19 UTC (rev 11957)
+++ trunk/ui/fileUpload/src/main/java/org/richfaces/renderkit/FileUploadRendererBase.java	2008-12-21 16:23:05 UTC (rev 11958)
@@ -47,7 +47,6 @@
 import javax.faces.render.RenderKitFactory;
 import javax.servlet.http.HttpSession;
 
-import org.ajax4jsf.Filter;
 import org.ajax4jsf.context.AjaxContext;
 import org.ajax4jsf.event.AjaxEvent;
 import org.ajax4jsf.javascript.JSFunction;
@@ -61,6 +60,7 @@
 import org.ajax4jsf.renderkit.RendererUtils;
 import org.ajax4jsf.request.MultipartRequest;
 import org.ajax4jsf.resource.CountingOutputWriter;
+import org.richfaces.component.FileUploadConstants;
 import org.richfaces.component.UIFileUpload;
 import org.richfaces.component.UIProgressBar;
 import org.richfaces.component.util.HtmlUtil;
@@ -120,7 +120,7 @@
 		
 		ExternalContext externalContext = context.getExternalContext();
 		Map<String, String> requestParameterMap = externalContext.getRequestParameterMap();
-		String fileUploadIndicator = requestParameterMap.get(Filter.FILE_UPLOAD_INDICATOR);
+		String fileUploadIndicator = requestParameterMap.get(FileUploadConstants.FILE_UPLOAD_INDICATOR);
 
 		if (fileUploadIndicator != null && Boolean.TRUE.toString().equals(fileUploadIndicator)) {
 			UIFileUpload fileUpload = (UIFileUpload) component;
@@ -131,10 +131,10 @@
 				return; // Avoid listener calling for another fileUpload
 			}
 			
-			String uid = requestParameterMap.get(Filter.UPLOAD_FILES_ID);
+			String uid = requestParameterMap.get(FileUploadConstants.UPLOAD_FILES_ID);
 			decreaseFileCounter(context, id);
 			Map<String, MultipartRequest> map = (Map<String, MultipartRequest>) externalContext.getSessionMap()
-					.get(Filter.REQUESTS_SESSIONS_BEAN_NAME);
+					.get(FileUploadConstants.REQUESTS_SESSIONS_BEAN_NAME);
 
 			MultipartRequest multipartRequest = map.get(uid);
 			
@@ -182,7 +182,7 @@
 		Object session = context.getExternalContext()
 				.getSession(false);
 		synchronized (session) {
-			Map<String, Integer> map = (Map<String, Integer>) context.getExternalContext().getSessionMap().get(Filter.UPLOADED_COUNTER);
+			Map<String, Integer> map = (Map<String, Integer>) context.getExternalContext().getSessionMap().get(FileUploadConstants.UPLOADED_COUNTER);
 			if (map == null) {
 				map = Collections
 						.synchronizedMap(new HashMap<String, Integer>());
@@ -364,7 +364,7 @@
 	@SuppressWarnings("unchecked")
 	private void decreaseFileCounter(FacesContext context, String id) {
 		Map<String, Integer> map = (Map<String, Integer>) context.getExternalContext().getSessionMap()
-				.get(Filter.UPLOADED_COUNTER);
+				.get(FileUploadConstants.UPLOADED_COUNTER);
 		if (map != null) {
 			Integer i = map.get(id);
 			if (i == null) {
@@ -458,7 +458,7 @@
 		Map options = AjaxRendererUtils.buildEventOptions(context, component);
 		Map parameters = (Map) options.get("parameters");
 		parameters.put("action", action);
-		parameters.put(Filter.UPLOAD_FILES_ID, new JSReference("uid"));
+		parameters.put(FileUploadConstants.UPLOAD_FILES_ID, new JSReference("uid"));
 		parameters.put(clientId, clientId);
 		parameters.put(AjaxRendererUtils.AJAX_SINGLE_ATTR, clientId);
 		if (oncomplete != null) {
@@ -710,6 +710,13 @@
 				parameters.put(p.getName(), p.getValue());
 			}
 		}
+		
+		AjaxContext ajaxContext = AjaxContext.getCurrentInstance(context);
+		Map<String, Object> commonAjaxParameters = ajaxContext.getCommonAjaxParameters();
+		if (commonAjaxParameters != null) {
+			parameters.putAll(commonAjaxParameters);
+		}
+		
 		return ((parameters.size() > 0) ? ScriptUtils.toScript(parameters) : JSReference.NULL);
 	}
 	

Modified: trunk/ui/fileUpload/src/main/templates/org/richfaces/fileUpload.jspx
===================================================================
--- trunk/ui/fileUpload/src/main/templates/org/richfaces/fileUpload.jspx	2008-12-21 15:42:19 UTC (rev 11957)
+++ trunk/ui/fileUpload/src/main/templates/org/richfaces/fileUpload.jspx	2008-12-21 16:23:05 UTC (rev 11958)
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
+
 <f:root 
 	xmlns:f="http://ajax4jsf.org/cdk/template" 
 	xmlns:h=" http://ajax4jsf.org/cdk/headers"
@@ -48,7 +49,10 @@
 		variables.setVariable("uploadLabel",labels.get("upload"));
 		variables.setVariable("clearAllLabel",labels.get("clear_all"));
 
-		variables.setVariable("actionUrl",org.ajax4jsf.context.AjaxContextImpl.getCurrentInstance().getAjaxActionURL(context));
+		org.ajax4jsf.context.AjaxContext ajaxContext = org.ajax4jsf.context.AjaxContext.getCurrentInstance(context);
+		String ajaxActionUrl = ajaxContext.getAjaxActionURL(context);
+		
+		variables.setVariable("actionUrl", ajaxActionUrl);
 		variables.setVariable("formId",getFormId(context, component));
 		variables.setVariable("containerId",getContainerId(context, component));
 




More information about the richfaces-svn-commits mailing list