huruyosi’s blog

プログラミングとかインフラとかのメモです。

spring boot をjar で実行した時にjasper reportのサブレポートを指定する

前回の記事でTODOで残った件です。

huruyosi.hatenablog.com

java.io.InputStream を使う

ググってみるとサブレポートのsubreportExpressionのclassにjava.io.InputStreamを指定し、値に getClass().getResource("/path/to/my/report/in/a/jar/subreport.jasper").openStream() を指定するといいみたいです。SUBREPORT_DIRからの変更としてはすっきりする書き方。

stackoverflow.com

別解

net.sf.jasperreports.engine.JasperReport を使う。

s.ameblo.jp