Jasperreports で帳票を作る際に日付を和暦で表示したい場合、明治~平成の範囲ならば
JDK6 以上の java.text.SimpleDateFormat を利用して簡単に設定できました。
帳票の出力日付などを印字したい場合に役立つと思います。
以下 iReport を使ってデザインする場合の手順
(Expression の言語が Javascript のみです
既にGroovy とか使ってたらごめんなさい)
1. リポートのプロパティでExpression のLanguage を "Javascript" に設定
2. 日付を表示したい箇所に textfield を作成し、Expression 編集
3. Expression 入力
java.util.Locale.setDefault(new java.util.Locale("ja", "JP", "JP"));
new java.text.SimpleDateFormat("GGGG y 年 M 月 d 日").format(new java.util.Date())
↑2行目の末尾にはセミコロンいりません。
以上で、 「平成 26 年 5 月 20 日」のように帳票作成時の日付を和暦で表示できるようになります。
データソースの Date 型項目を使う場合も format に渡すだけ。
JRE の lib に有る calendars.properties を修正すれば元号の変更もできるようです。