html:errorsを使うときの注意点

Strutsの<html:errors/>で表示される中の文字ってHTMLエスケープされないのね。知らなかった……。
何も考えずにいるとXSS脆弱性を含めてしまう。要注意。
例えばリソースファイル中に

errors.general=エラーが発生しました(詳細:{0})
# ほんとは要native2ascii

なんて定義して、エラー発生時に動的に{0}の部分を動的に変更させて表示しようとする場合、その文字列にユーザーが入力した文字をそのまま含めるようなことがあってはならないわけだ。すこしでもその可能性があるならエスケープした文字列を入れる必要あり、と。