HTML のエスケープは問題ありません。<
や>
などは削除されます。
コメントタグ内のファイル名を出力しているという問題に遭遇しました。<!-- ${filename} -->
もちろん、逃げないと事態は悪化する可能性があるため、次のようになります。
<!-- <c:out value="${filename}"/> -->
問題は、ファイルの名前に「--」が含まれていると、すべての html が台無しになること<!-- -- -->
です。
標準の html エスケープはこれらのダッシュをエスケープしません。誰かがそれらをエスケープするためのシンプルで標準的な方法に精通しているかどうか疑問に思っていました。