You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ca...@apache.org on 2007/05/18 15:54:13 UTC
svn commit: r539471 -
/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java
Author: cagatay
Date: Fri May 18 06:54:13 2007
New Revision: 539471
URL: http://svn.apache.org/viewvc?view=rev&rev=539471
Log:
Fixed TOMAHAWK-979, ensure the showing of open/save file dialog, thanks to Emil Cazacu for the patch
Modified:
myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java
Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java?view=diff&rev=539471&r1=539470&r2=539471
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/java/org/apache/myfaces/custom/excelexport/ExcelExportPhaseListener.java Fri May 18 06:54:13 2007
@@ -58,9 +58,9 @@
try {
Object contextResponse = facesContext.getExternalContext().getResponse();
if(contextResponse instanceof HttpServletResponse)
- writeExcelOutput(generatedExcel,(HttpServletResponse)contextResponse);
+ writeExcelOutput(generatedExcel,(HttpServletResponse)contextResponse, tableId);
else if(contextResponse instanceof RenderResponse)
- writeExcelOutput(generatedExcel,(RenderResponse)contextResponse);
+ writeExcelOutput(generatedExcel,(RenderResponse)contextResponse, tableId);
facesContext.getApplication().getStateManager().saveSerializedView(facesContext);
facesContext.responseComplete();
@@ -78,13 +78,23 @@
return PhaseId.RESTORE_VIEW;
}
- private void writeExcelOutput(HSSFWorkbook workBook, HttpServletResponse response) throws IOException{
+ private void writeExcelOutput(HSSFWorkbook workBook, HttpServletResponse response, String tableId) throws IOException{
response.setContentType("application/vnd.ms-excel");
+ response.setHeader("Expires", "0");
+ response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
+ response.setHeader("Pragma", "public");
+ response.setHeader("Content-disposition", "attachment;filename=" + tableId + ".xls");
+
workBook.write(response.getOutputStream());
}
- private void writeExcelOutput(HSSFWorkbook workBook, RenderResponse response) throws IOException{
+ private void writeExcelOutput(HSSFWorkbook workBook, RenderResponse response, String tableId) throws IOException{
response.setContentType("application/vnd.ms-excel");
+ response.setProperty(RenderResponse.EXPIRATION_CACHE, "0");
+ response.setProperty("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
+ response.setProperty("Pragma", "public");
+ response.setProperty("Content-disposition", "attachment;filename=" + tableId + ".xls");
+
workBook.write(response.getPortletOutputStream());
}
@@ -140,5 +150,4 @@
}
}
}
-
-}
+}
\ No newline at end of file