R9.0.0/R9.0.1への移行
最終更新日: 2022年12月28日
R7/R8 ではログ出力ライブラリは Log4j 1系を用いていました。R9 から、これが Log4j 2系に変わりました。
以下の内容に従って、カスタマイズコードを修正してください。
なお、logger オブジェクトの使い方 (API) は互換性があるため、これまでのカスタマイズコードを再利用できます。import 文および logger オブジェクトの生成に関するコードが変わります。
設定ファイルは log4j.properties から log4j2.xml に変わりました。WEB-INF/classes/log4j2.xml となっています。
設定ファイルの詳細な記述方法は割愛します。Log4j2 のマニュアルあるいは各種の解説記事をお読みください。
自動生成される HTML/JSP/JavaScript において id と name 属性の生成ルールが変更されました。
例えば R7/R8 で次のような表記だった場合:
R9 では次のようになります。
このため、次の影響があります。
R9.0.0より、いくつかのjspとして提供されていたファイルがhtmlに変わっています。このhtmlにはThymeleafという技術が使われています。
例えば「パスワード変更画面」は次のようになりました。
上の説明「モデルID、項目IDへの予約語の追加」に関連して、次のポートレットの修正を行ってください。
パラメータ名
この対応を行わないと、期限の過ぎた「お知らせ」がすべて表示されます。
外部から Wagby の REST API を呼び出すとき、リクエストパラメータ形式を利用している場合は上と同様に表記部分の置換を行ってください。
なお、Wagby の REST API を JSON 形式のパラメータでやりとりしている場合、上記の対応は不要です。
R9.0.0からR9.0.1へバージョンアップした場合、次の対応を行ってください。
Log4j 1系から2系への変更
カスタマイズコードの修正
R7/R8まで生成されたコード
import org.apache.log4j.Logger;
Logger logger =
Logger.getLogger(XX.class.getName());
R9で生成されたコード
import org.apache.logging.log4j.*;
Logger logger =
LogManager.getLogger(XX.class.getName());
設定ファイル
<Loggers>
<Root level="info">
<AppenderRef ref="C"/>
<AppenderRef ref="F"/>
</Root>
<Logger name="jp.jasminesoft.jfc.job.JFCBaseJobBean" level="DEBUG">
<AppenderRef ref="C"/>
<AppenderRef ref="F"/>
</Logger>
…
HTML/JSP/JavaScript
モデルID、項目IDへの予約語の追加
元の文字
R8
R9
/
$002f
_002f
[
$005b
_005b
]
$005d
_005d
@
$0040
_0040
juser_p$002fjgroupid$005b1$005d$002f$0040id
juser_p_002fjgroupid_005b1_005d_002f_0040id
標準で同梱される画面がjspからhtmlへ
ポートレット
お知らせポートレット
jnews_cp$002flimitdate1jshparam
を、jnews_cp_002flimitdate1jshparam
としてください。
日付絞り込みへの影響
REST API 呼び出し
R9.0.0からR9.0.1へ移行する場合の手動対応