ServletRequest.setCharacterEncoding()は、リクエストの本文で送信されたパラメーターにのみ影響します。URL パラメータには影響しません。
JBoss はデフォルトで ISO-8859-1 を使用して URL パラメータをエンコードしており、これはサーバー全体でのみ変更できます。
ServletRequest.getParameterMap()は、リクエスト ボディからのフォーム データと URL パラメータの両方で満たされた Map を返します。したがって、UTF-8とURL-Parameters で endoded された form-data を受け取ると、parameter-map にさまざまな endoding が見つかります。
私が今行っているのは、 HttpServletRequest.getQueryString()をURLEncodedUtilsで解析し、queryString からの requestParameterMap 内のすべてのパラメーターを上書きすることです。
この問題を解決するより良い方法はありますか?