Index: lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java =================================================================== diff -u -r5593d5b6d117372be17dacc3523ee0dfda5ed435 -rc939f67341afd2be5afd617f7116bfb1b792b1dd --- lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java (.../WorkspaceManagementService.java) (revision 5593d5b6d117372be17dacc3523ee0dfda5ed435) +++ lams_central/src/java/org/lamsfoundation/lams/workspace/service/WorkspaceManagementService.java (.../WorkspaceManagementService.java) (revision c939f67341afd2be5afd617f7116bfb1b792b1dd) @@ -26,6 +26,8 @@ import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.util.Collections; +import java.util.Comparator; import java.util.Date; import java.util.Hashtable; import java.util.Iterator; @@ -1174,6 +1176,19 @@ log.warn("getAccessibleOrganisationWorkspaceFolders: User "+user.getUserId()+" does not exist. Returning no folders."); } + //sort folders by their names + Collections.sort(folders, new Comparator() { + + @Override + public int compare(FolderContentDTO fc1, FolderContentDTO fc2) { + if ((fc1.getName() != null) && (fc2.getName() != null)) { + return fc1.getName().compareToIgnoreCase(fc2.getName()); + } + //return 1 if either of comparable FolderContentDTOs has a null name + return 1; + } + }); + return folders; } /**