ダウンロード
以下のリンクからjasperreports-5.0.0-project.zipをダウンロードします。
Jasper Reports 5.0.0 ダウンロード
jasperreports-5.0.0-project.zip を解凍して、
- /lib/commons-beanutils-1.8.0.jar
- /lib/commons-collections-2.1.1.jar
- /lib/commons-digester-2.1.jar
- /lib/commons-logging-1.1.1.jar
- /lib/iText-2.1.7.js1.jar
- /dist/jasperreports-5.0.0.jar
をコピーしてビルドパスを通します。
apache commonsについては重複するのでバージョンの新しいものにビルドパスを通します。
テンプレートファイルを作成
WEB-INF/templatesフォルダを作成してテンプレートを作成します。iReportのインストールについては、PDF帳票作成にはこれ!JasperReportsで日本語(IPAexフォント)を使うまで - DISってHONEY♪ @gungnir_odinを参考にしてください。
テンプレートのプロパティで、LanguageにJavaを選択します。
PDF出力処理
Actionクラスに以下の処理を記述します。
@Execute(validator = false) public String index() throws JRException, IOException { String path = RequestUtil.getRequest().getSession().getServletContext() .getRealPath("/WEB-INF/templates/simple_report.jasper"); byte[] bytes = JasperRunManager.runReportToPdf(path, new HashMap<String, Object>(), new JREmptyDataSource()); HttpServletResponse response = ResponseUtil.getResponse(); response.setContentType("application/pdf"); response.setContentLength(bytes.length); OutputStream out = response.getOutputStream(); out.write(bytes); out.flush(); out.close(); return null; }
まとめ
これでひとまずPDF出力が可能になりました。Jasper Reportsは導入までの学習コストも低く、手軽に導入することができそうです。