diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js
index 390192120f19174ab029aaac221490318119baf9..5e46fba8c94da223424de3ee7c4b895a82fa1d15 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/resources/uploader/js/src/upload.js
@@ -168,7 +168,7 @@ var Uploader = new function () {
                 progress[id].xhr = xhr;
                 // pkupczyk: added sessionID
                 xhr.open("POST", settings.file_upload_url +
-                         "?filename=" + file.name +
+                         "?filename=" + encodeURIComponent(file.name) +
                          "&id=" + id +
                          "&startByte=" + startByte +
                          "&endByte=" + endByte + 
@@ -200,7 +200,7 @@ var Uploader = new function () {
                             // pkupczyk: changed download url
                             $("#filename-" + d.id).replaceWith("<a target=\"_blank\" " +
                                                                "href=\"" + settings.file_download_url + "?sessionID=" + settings.sessionID + "&filePath=" +
-                                                               d.filename + "\">" + d.filename + "</a>"); 
+                                                               encodeURIComponent(d.filename) + "\">" + d.filename + "</a>"); 
                             $("#action-bar-" + d.id).remove();
                             delete progress[d.id];
                             settings.oncomplete(file);
diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/DataSetViewer.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/DataSetViewer.js
index 71fe24da03e105dffad0c13989e3cdd3da6fffb3..baaf678de308e41ad7c73e82465facbfc5fbda4e 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/DataSetViewer.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/widgets/DataSetViewer.js
@@ -167,8 +167,7 @@ function DataSetViewer(containerId, sample, serverFacade, datastoreDownloadURL)
 									.append($("<td>").html(dataset.code))
 									.append($("<td>").html(dataset.dataSetTypeCode));
 				
-				var downloadUrl = datastoreDownloadURL + '/' + dataset.code + "/" + datasetFiles[i].pathInDataSet + "?sessionID=" + this.serverFacade.getSession();
-					
+				var downloadUrl = datastoreDownloadURL + '/' + dataset.code + "/" + encodeURIComponent(datasetFiles[i].pathInDataSet) + "?sessionID=" + this.serverFacade.getSession();
 				if(datasetFiles[i].isDirectory) {
 					$tableRow.append($("<td>").html(datasetFiles[i].pathInDataSet));
 					$tableRow.append($("<td>"));