为了账号安全,请及时绑定邮箱和手机立即绑定

Jasper Report PDF 打不开

Jasper Report PDF 打不开

郎朗坤 2021-12-01 15:09:31
我正在尝试构建一个示例 Web 应用程序,它加载通过 jasper 报告(.jasper 文件)生成的 pdf 报告。但是,该报告不会以 pdf 格式打开并显示消息“此 PDF 文档可能无法正确显示”。代码片段如下。服务器日志中没有异常日志。任何帮助都会很棒。谢谢。Servlet 控制器类@WebServlet("/generateReport")public class JasperReportsExample extends HttpServlet{    final String deviceJasper = "SampleReport.jasper";    protected void doGet(HttpServletRequest request, HttpServletResponse response)            throws IOException, ServletException {    response.setContentType("application/pdf");    response.setCharacterEncoding("UTF-8");    try{    List<SampleReportBean> sampleReportBeanList = new ArrayList<SampleReportBean>();    SampleReportBean bean = new SampleReportBean();    bean.setName("Hello");    sampleReportBeanList.add(bean);    InputStream is = this.getClass().getClassLoader().getResourceAsStream(deviceJasper);    JasperReport jasperReport = (JasperReport) JRLoader.loadObject(is);    JRBeanCollectionDataSource beanCollectionDataSource = new JRBeanCollectionDataSource(sampleReportBeanList);    Map<String, Object> parameters = new HashMap<String, Object>();    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, beanCollectionDataSource);    JasperExportManager.exportReportToPdfFile(jasperPrint, deviceJasper);    }catch(Exception e) {        System.out.println("Error:while creating jasper report....");        e.printStackTrace();    }    }}html页面<form action="/samplejasperreport/generateReport" method="get"><div><input type="submit" name="Generate Report" value="Generate Report"></div></form>目录结构图错误画面:
查看完整描述

1 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

感谢 AlexK:

JasperExportManager.exportReportToPdfStream(jasperPrint, response.getOutputStream());//send the pdfstream to the browser


查看完整回答
反对 回复 2021-12-01
  • 1 回答
  • 0 关注
  • 302 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信