【java】JasperReport + JaspersoftStudioでのPDF帳票出力

iReportのサポートが2015年末迄で終了となっていた、、
後継のJaspersoftStudioにてPDF出力を作成したので、詰まったとこ等メモ


■環境
 windows7
 Eclipse Luna 4.4.1
 PostgreSQL 9.4
 java 8
 tomcat 8
 Seasar2 Framework

○前提として
 ・既存WebアプリケーションにPDFの出力処理を組込む
 ・帳票の中身は、静的文言・画面入力値(パラメータ)・DB内容一覧(サブレポート)を含む

目次

  ※今回は(1)、(2)まで
 (1) JaspersoftStudioのインストール

 (2) 関連ライブラリの設定

 (3) レイアウト(.jrxml)ファイル作成

 (4) PDFファイルへパラメータを出力する方法

 (5) PDFファイルへJavaBeanを出力する方法

JaspersoftStudioのインストール

 Eclipseプラグインの追加

  • [ヘルプ] メニュー > [Eclipse マーケットプレース]

f:id:kawamura_mark2:20151203174148p:plain

  • [検索] テキスト ボックスに “Jaspersort Studio” と入力し、[実行] ボタンをクリック
  • "Jaspersort Studio X.X.X"を選択し、インストール

f:id:kawamura_mark2:20151203174229p:plain

  • 指示に従い、進める
  • インストール完了後、Eclipse の再起動が必要

 レイアウトファイル(.jrxml)をEclipse上で編集可能になる

※注意 プラグインインストール後、なぜかBackSpaceキーがDeleteキーと同様な設定になっている。
ウィンドウ > 設定 > 一般 > キー にて、下記の様に設定を戻せば直ります。

f:id:kawamura_mark2:20151203174448p:plain

関連ライブラリの設定

 Eclipseに下記の関連ライブラリを配置し、ビルドを通します。 

  • commons-beanutils-1.9.0.jar
  • commons-collections-3.2.1.jar
  • commons-digester-2.1.jar
  • commons-logging-1.1.1.jar
  • iText-2.1.7.jar
  • iTextAsian.jar
  • jasperreports-6.2.0.jar
  • jasperreports-fonts-6.2.0.jar
  • jasperreports-javaflow-6.2.0.jar
  • commons-javaflow-20060411.jar

下記URLよりダウンロード可能
JasperReports® Library | Jaspersoft Community


iTextについて
 iText(JasperReportが依存するPDF出力用のライブラリ)の最新バージョンは5.5.0(2015/12/03 時点)
 var5.0.0以降はAGPLv3 (使用したソースを公開する、もしくは有償ライセンスを購入しないと商用利用出来ないらしい)
 気にせず使える最新が2.7.1、幸いJasperReport・JaspersoftStudioとのバージョン互換があったため、今回はこれを選択。
 あと、日本語化用ライブラリ iTextAsian.jarの類似ライブラリ itext-ajian.jarはvar5.0.0以降対応。
 ※サポートが切れている為、公式サイトよりダウンロードは不可