2

ServletRequest.setCharacterEncoding()は、リクエストの本文で送信されたパラメーターにのみ影響します。URL パラメータには影響しません。

JBoss はデフォルトで ISO-8859-1 を使用して URL パラメータをエンコードしており、これはサーバー全体でのみ変更できます。

ServletRequest.getParameterMap()は、リクエスト ボディからのフォーム データと URL パラメータの両方で満たされた Map を返します。したがって、UTF-8URL-Parameters で endoded された form-data を受け取ると、parameter-map にさまざまな endoding が見つかります。

私が今行っているのは、 HttpServletRequest.getQueryString()URLEncodedUtilsで解析し、queryString からの requestParameterMap 内のすべてのパラメーターを上書きすることです。

この問題を解決するより良い方法はありますか?

4

0 に答える 0