try {
JasperCompileManager.compileReportToFile(jrxmlPath, jasperPath);
fisRef = new FileInputStream(new File(jasperPath));
sosRef = response.getOutputStream();
//以javaBean为数据源注入报表数据
//response.setContentType("application/pdf");这段代码要是写在,JasperRunManager.runReportToPdfStream(fisRef, sosRef, paramMap, new JRBeanCollectionDataSource(list));
//后面,会出现问题:虽在页面能预览,但是下载时候,文件类型不能选择,无类型可选,
response.setContentType("application/pdf");
JasperRunManager.runReportToPdfStream(fisRef, sosRef, paramMap, new JRBeanCollectionDataSource(list));
} catch (JRException e) {
e.printStackTrace();
}finally {
sosRef.flush();
sosRef.close();
}
response.setContentType()的String参数及对应类型
<option value="image/bmp">BMP</option>
<option value="image/gif">GIF</option>
<option value="image/jpeg">JPEG</option>
<option value="image/tiff">TIFF</option>
<option value="image/x-dcx">DCX</option>
<option value="image/x-pcx">PCX</option>
<option value="text/html">HTML</option>
<option value="text/plain">TXT</option>
<option value="text/xml">XML</option>
<option value="application/afp">AFP</option>
<option value="application/pdf">PDF</option>
<option value="application/rtf">RTF</option>
<option value="application/msword">MSWORD</option>
<option value="application/vnd.ms-excel">MSEXCEL</option>
<option value="application/vnd.ms-powerpoint">MSPOWERPOINT</option>
<option value="application/wordperfect5.1">WORDPERFECT</option>
<option value="application/vnd.lotus-wordpro">WORDPRO</option>
<option value="application/vnd.visio">VISIO</option>
<option value="application/vnd.framemaker">FRAMEMAKER</option>
<option value="application/vnd.lotus-1-2-3">LOTUS123</option>