0
4

1 に答える 1

0

これは、それを行う単純なフィルターです。struts2 フィルターの前に、このフィルターを web.xml に追加するだけです。

public class CharacterEncodingFilter implements Filter
{
    public void doFilter(ServletRequest request, ServletResponse response,
FilterChain next)
        throws IOException, ServletException
    {
        String encoding = request.getCharacterEncoding();
        if (encoding == null || encoding.length() == 0)
        {
            request.setCharacterEncoding("UTF-8");
        }

        next.doFilter(request, response);
    }

}

自分で試していないので動作するかどうかはわかりません:)

アップデート

上記のフィルターの後でさえ、私は同じ問題に直面していました.

Tomcat server.xml ファイルに次のエントリを追加しました

 <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" URIEncoding="UTF-8"/>

URIEncoding="UTF-8"  // this is what i added 

そして今、私は自分のjspページで適切な文字を見ることができます.Javaのデフォルトエンコーディングと同じです。

BalusC によるこの素晴らしい記事unicode-how-to-get-characters-rightを読んでください。

これがあなたを助けることを願っています。

于 2011-12-27T07:49:58.657 に答える