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