| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
編集の要約なし
==[[Filterで文字化け対策]]==[[J2EE]{{category ] | [[Category:文字化け}}]]
====Webアプリケーションの文字化け対策[[Webアプリケーション]]の文字化け対策====
以下のようなフィルターを作成し、web.xmlに設定。
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequestServlet[[R]]equest; import javax.servlet.ServletResponseServlet[[R]]esponse;
/**
* Webアプリケーションでの文字コードを一括処理するフィルタ[[Webアプリケーション]]での文字コードを一括処理するフィルタ * <&lt;br/>&gt; * StrutsのActionFormでは、リクエストパラメータの解析時に、文字エンコーディングが行われないため、StrutsのActionFormでは、リクエストパラメータの解析時に、文字[[エンコーディング]]が行われないため、 * アプリケーション全体で使用する文字エンコーディングを定義したフィルタを適用する。アプリケーション全体で使用する文字[[エンコーディング]]を定義したフィルタを適用する。 * <&lt;br/>&gt;
* WEB-INF/web.xml にて、以下のように指定することで、有効になる。
* ここで、使用する文字コードを設定する。ここで、使用する[[文字コード]]を設定する。 * <&lt;pre style="color:blue;">&gt;
* &lt;filter&gt;
* &lt;filter-name&gt;CharacterEncodingFilter&lt;/filter-name&gt;
* &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
* &lt;/filter-mapping&gt;
* <&lt;/pre>&gt;
* @author yagi
*/
public class CharacterEncodingFilter implements Filter {
/**
* 文字エンコーディング文字[[エンコーディング]]
*/
private String encording = null;
}
/* @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequestServlet[[R]]equest, javax.servlet.ServletResponseServlet[[R]]esponse, javax.servlet.FilterChain) */ public void doFilter(ServletRequest Servlet[[R]]equest request, ServletResponse Servlet[[R]]esponse response, FilterChain filterChain) throws IOException, ServletException {
request.setCharacterEncoding(this.encording);
filterChain.doFilter(request, response);
}
*[[Tomcat 5.x GET でパラメータを渡すと文字化け]]

案内メニュー