汎用的なJSP-EL関数を提供するライブラリJava Standard EL Functions 1.1.0をリリースしました。
このバージョンでの変更点は以下の通りです。
- FunctionsFilterを追加。このフィルタをweb.xmlに登録しないとJava Standard EL Functionsの一部の機能が利用できません。
- f:json()、f:query()、f:matches()、f:replace()、f:js()、f:concat()、f:contains()を追加。
- log:trace()などLog4jでログを出力するための関数群を追加。
- $context変数を追加。
注意点としてはweb.xmlにFunctionsFilterの登録が必要になったという点です。それと、大きなところではLog4jを使ってJSPからログを出力する関数を追加しました。こんな感じで使います。
<%@ taglib uri="http://amateras.sf.jp/log4j" prefix="log" %> ... ${log:debug('デバッグログです。')}
このときLoggerの名前は以下のルールで決定されます。
- HttpServletRequest#getServletPath()でサーブレットパスを取得
- サーブレットパスの先頭の / と末尾の .jsp を除去
- jsp.サーブレットパスの / を . に変換した文字列 をLogger名とする
たとえば、/index.jsp の場合は jsp.index、/admin/index.jsp の場合は jsp.admin.index がLogger名になります。 Log4j側ではこれらのLoggerに対応するアペンダを定義しておくことでJSPから出力されるログを制御することができます。