既存のテンプレートに基づいて自動生成された PDF を吐き出すために、PDFBox を使用してきました。以下のコードは IndexOutOfBoundsException で失敗しfinalDoc.save()
、何が間違っているのかわかりません。
PDDocument finalDoc = new PDDocument();
for (StudentEN student : students) {
PDDocument document = PDDocument.load("template.pdf");
PDPage page = (PDPage) document.getDocumentCatalog().getAllPages().get(0);
PDPageContentStream contentStream = new PDPageContentStream(document, page, true, true);
contentStream.beginText();
// Draw stuff
contentStream.endText();
contentStream.close();
finalDoc.addPage(page);
document.close();
}
finalDoc.save(response.getOutputStream());
finalDoc.close();
どんな助けでも大歓迎です!