Index: spreadsheet/pom.xml =================================================================== --- spreadsheet/pom.xml (revision 61826) +++ spreadsheet/pom.xml (working copy) @@ -35,6 +35,11 @@ commons-logging 1.0.4 + + org.sakaiproject.kernel + sakai-component-manager + + poi Index: spreadsheet/src/java/org/sakaiproject/jsf/spreadsheet/SpreadsheetDataFileWriterCsv.java =================================================================== --- spreadsheet/src/java/org/sakaiproject/jsf/spreadsheet/SpreadsheetDataFileWriterCsv.java (revision 61826) +++ spreadsheet/src/java/org/sakaiproject/jsf/spreadsheet/SpreadsheetDataFileWriterCsv.java (working copy) @@ -32,6 +32,8 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.sakaiproject.component.cover.ServerConfigurationService; + /** * NOTE: CSV export capabilities are extremely limited! UTF-16 text (such as * Chinese) is not supported correctly, for example. Use Excel-formatted output if at all @@ -43,7 +45,7 @@ public void writeDataToResponse(List> spreadsheetData, String fileName, HttpServletResponse response) { response.setContentType("text/comma-separated-values"); response.setHeader("Content-disposition", "attachment; filename=" + fileName + ".csv"); - + String csvString = getAsCsv(spreadsheetData); response.setContentLength(csvString.length()); OutputStream out = null; @@ -63,9 +65,9 @@ } private String getAsCsv(List> spreadsheetData) { - String csvSep = ","; + String csvSep = ServerConfigurationService.getString("csv.separator",","); StringBuilder sb = new StringBuilder(); - + for (List rowData : spreadsheetData) { Iterator dataIter = rowData.iterator(); while (dataIter.hasNext()) { @@ -80,11 +82,11 @@ if (dataIter.hasNext()) { sb.append(csvSep); } else { - sb.append("\n"); + sb.append("\n"); } } } - + return sb.toString(); }