在处理 PDF 合并请求时,我在一个流量很大的应用程序中经常看到这个错误。
java.lang.RuntimeException:请求了第 3 页,但文档只有 2 页。在 com.lowagie.text.pdf.PdfWriter.close(PdfWriter.java:1169) 在 com.lowagie.text.pdf.PdfCopy.close(PdfCopy.java:485) 在 ...
错误在PdfCopy
类中,addPage
方法:
public void addPage(PdfImportedPage iPage) throws IOException, BadPdfFormatException
pageRef = getCurrentPage(); // increase pageReferences.size()
但后来IOException
发生了(ClientAbortException
),但最后一行++currentPageNumber;
没有机会执行。
我该如何防止这种情况发生?我可以在最后一行添加一个 finally 块吗?