I want to generate a report which includes an excel sheet which is generated from the data from the database . I am using Apache POI HSSF for creating the excel sheet file in the model.
Now how to let the user download the file i have created ?
Just use a servlet. Feed response.getOutputStream()
to POI HSSF to write the workbook to. Most important bit is the Content-Disposition
response header. If you set it to attachment
, then the browser will pop a Save As dialogue.
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=name.xls");
WritableWorkbook workBook = Workbook.createWorkbook(response.getOutputStream());
// ...
Then let the download URL point to that servlet, if necessary with some request parameters or path info.