无法打开生成的pdf

时间:2018-10-11 05:42:49

标签: java primefaces

我正在使用以下代码在jsf中以pdf格式下载字段的值。

尽管我可以下载pdf,但无法打开它。它显示“无法打开pdf”。

这里的编码有问题吗(尝试在getbytes()中提供UTF-8,但它也不起作用。)

public StreamedContent getGeneratePdf() throws IOException {
        final PortletResponse portletResponse = (PortletResponse) FacesContext.getCurrentInstance().getExternalContext()
                .getResponse();
        final HttpServletResponse res = PortalUtil.getHttpServletResponse(portletResponse);
        res.setContentType("application/pdf");
        res.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
        res.setHeader("Content-Disposition", "attachment; filename=\"letter.pdf\"");
        res.setHeader("Refresh", "1");
        res.flushBuffer();
        OutputStream output = res.getOutputStream();
        byte[] out=null;
        out=this.getNotes().getBytes();
        output.write(out);
        output.flush();
        output.close();
        return null;
    }

notes是从UI填充的string类型的属性。

0 个答案:

没有答案