私はバイト配列出力ストリームを使用してpdfを生成しましたが、入力はjspページとWebベースのデータのマッピングであり、このマップされたドキュメントはpdfを生成するために使用されます
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PdfWriter.getInstance(document, baos);
document.open();
document.add(new Paragraph(webDoc));
document.close();
response.setHeader("Expires", "0");
response.setHeader("Cache-Control","must-revalidate, post-check=0, pre-check=0");
response.setHeader("Pragma", "public");
response.setContentType("application/pdf");
OutputStream os = response.getOutputStream();
baos.writeTo(os);
os.flush();
ここで document.add() で使用される webdoc は、jsp からのマッピングされたデータといくつかのデータ入力の出力ですが、代わりに pdf に続くページが表示されます
%PDF-1.4 %2 0 obj <>ストリーム x@<ńĤpٶB>SAa]"1zo&"k0;(\px̃e#z,G%SQS^]P/@h |\" Ȉ[`JJrf6$m}M Ʉ :+t$j- y HBt: uRŞ{bz{yK 3CZ"Uy2i>>/MediaBox[0 0 595 842]>> endobj 1 0 obj <> endobj 3 0 obj <> endobj 5 0 obj <> endobj 6 0 obj <> endobj xref 0 70000000000 65535 f 0000000555500000 N 0000000015 00000 N 0000000643 00000 N 0000000398 00000 N 0000000706 00000 N 0000000751 00000 NARTINER <17152061A FAMF54517FACHF6FADCHMADCHAMF6CESFAMF517417171717171171171171171171171171111111111111111111111111111111111年ぶりに
私のweb.xmlにもサーブレットマッピングがありますが、生成されたpdfが動的になるため、urlパターンに疑問があるため、url-patternセクションに/servlet/servlet_nameがあります。
*.pdf を使用しても役に立ちませんでした。