mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
URL encoding and decoding fix ups and optimizations.
Added URLDecoder to mirror our optimized implementation of URLEncoder - based on optimized/modified JDK and W3 Consortium source code. urlEncode() and urlDecode() methods added to server-side JavaScript 'stringUtils' object. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@10498 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -27,7 +27,6 @@ package org.alfresco.web.app.servlet;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.SocketException;
|
||||
import java.net.URLDecoder;
|
||||
import java.text.MessageFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
@@ -54,6 +53,7 @@ import org.alfresco.service.cmr.repository.StoreRef;
|
||||
import org.alfresco.service.cmr.security.AccessStatus;
|
||||
import org.alfresco.service.cmr.security.PermissionService;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.util.URLDecoder;
|
||||
import org.alfresco.util.URLEncoder;
|
||||
import org.alfresco.web.app.Application;
|
||||
import org.apache.commons.logging.Log;
|
||||
@@ -156,7 +156,8 @@ public abstract class BaseDownloadContentServlet extends BaseServlet
|
||||
|
||||
// assume 'workspace' or other NodeRef based protocol for remaining URL elements
|
||||
StoreRef storeRef = new StoreRef(t.nextToken(), t.nextToken());
|
||||
String id = URLDecoder.decode(t.nextToken(), "UTF-8");
|
||||
String id = URLDecoder.decode(t.nextToken());
|
||||
|
||||
// build noderef from the appropriate URL elements
|
||||
nodeRef = new NodeRef(storeRef, id);
|
||||
|
||||
|
@@ -25,8 +25,6 @@
|
||||
package org.alfresco.web.app.servlet;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLDecoder;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
@@ -44,6 +42,7 @@ import org.alfresco.service.cmr.model.FileFolderService;
|
||||
import org.alfresco.service.cmr.model.FileInfo;
|
||||
import org.alfresco.service.cmr.model.FileNotFoundException;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.util.URLDecoder;
|
||||
import org.alfresco.web.app.Application;
|
||||
import org.alfresco.web.bean.LoginBean;
|
||||
import org.alfresco.web.bean.repository.Repository;
|
||||
@@ -283,7 +282,7 @@ public abstract class BaseServlet extends HttpServlet
|
||||
// create a list of path elements (decode the URL as we go)
|
||||
for (int x = 1; x < args.length; x++)
|
||||
{
|
||||
paths.add(decode ? URLDecoder.decode(args[x], "UTF-8") : args[x]);
|
||||
paths.add(decode ? URLDecoder.decode(args[x]) : args[x]);
|
||||
}
|
||||
|
||||
if (logger.isDebugEnabled())
|
||||
@@ -302,13 +301,6 @@ public abstract class BaseServlet extends HttpServlet
|
||||
if (logger.isDebugEnabled())
|
||||
logger.debug("Resolved webdav path to NodeRef: " + nodeRef);
|
||||
}
|
||||
catch (UnsupportedEncodingException uee)
|
||||
{
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Failed to resolve webdav path", uee);
|
||||
|
||||
nodeRef = null;
|
||||
}
|
||||
catch (FileNotFoundException fne)
|
||||
{
|
||||
if (logger.isWarnEnabled())
|
||||
|
@@ -29,7 +29,6 @@ import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.InputStream;
|
||||
import java.io.Serializable;
|
||||
import java.net.URLDecoder;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -51,6 +50,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.util.TempFileProvider;
|
||||
import org.alfresco.util.URLDecoder;
|
||||
import org.alfresco.web.app.servlet.BaseServlet;
|
||||
import org.alfresco.web.app.servlet.ajax.InvokeCommand;
|
||||
import org.alfresco.web.bean.repository.Repository;
|
||||
@@ -111,7 +111,7 @@ public class FileUploadBean implements Serializable
|
||||
}
|
||||
else if (item.isFormField() && item.getFieldName().equals("currentPath"))
|
||||
{
|
||||
currentPath = URLDecoder.decode(item.getString(), "UTF-8");
|
||||
currentPath = URLDecoder.decode(item.getString());
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user