JSP コードに奇妙な点がありました。二重のバックスラッシュの後にドル記号またはパーセント記号が続くと、単一のバックスラッシュ (プラス記号) に変換されるようです。
つまり、次の JSP です。
<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" %>
\\#
\\$
\\%
\\^
次のようにレンダリングされます。
\\#
\$
\%
\\^
JDK 1.6.0_02 と Apache Tomcat 5.5.23 および 6.0.16 (2 台のマシン) を使用しています。
これは Tomcat のバグですか? JDK? それとも、JSP 仕様のあいまいなオプションに準拠していますか? 仕様を調べてみましたが、有用なものは見つかりませんでした。
回避策はかなり簡単です。バグがある場合に備えて、バグを報告すると思いました。
編集:へー、stackoverflowもバックスラッシュをマングルします