提问者:小点点

从DOCX转换为PDF时的java. lang.NullPointerException


我有转换问题与ApachePOI这是我的方法'

private GeneratePdfDtoResponse savePdfFile(XWPFDocument xwpfDocument, String pdfFileName) {
        OutputStream out = null;
        try {
            String pdfFilePath = PDF_FILES_PATH + removeExtension(pdfFileName) + PDF_EXTENSION;
            PdfOptions options = PdfOptions.create();
            out = new FileOutputStream(new File(pdfFilePath));
            PdfConverter.getInstance().convert(xwpfDocument, out, options);
            return new GeneratePdfDtoResponse(new File(PDF_FILES_PATH));
        } catch (IOException e) {
            LOG.error(e.getMessage());
            return new GeneratePdfDtoResponse(null);
        }finally {
            closeOutputStream(out);
        }
    }`

我得到了下一个例外,但昨天它工作正常,我只更改了docx文件PdfConverter. getInstance()。转换(xwpfDocument,out,选项);这一行。

这是堆栈跟踪:


共2个答案

匿名用户

尝试在PdfConverter. getInstance()之前添加"xwpfDocument.createNumbering()"。转换(xwpfDocument,out,选项);在我的代码中,XWPFDocument变量的编号为空,导致NullPointerException。

希望上面会帮助你。

匿名用户

确保你有MS-word。如果你正在用其他应用程序(如写字板)创建示例docx,那么它将抛出null异常。