Webセキュリティの小部屋

Twitter のフォローはこちらから Facebook ページはこちら RSSフィードのご登録はこちらから
公開日:2013年3月2日

Java でレスポンスヘッダーの Content-Type に文字コードを指定する方法

Java でレスポンスヘッダーの Content-Type に文字コードを指定するには、サーブレットと JSP(Java Server Pages)で異なります。なお、動作環境は Tomcat を使用します。

サーブレット

Tomcat ではデフォルトでサーブレットのレスポンスヘッダーに Content-Type を出力しません。ですので、以下のように自分で出力する必要があります。

resp.setContentType("text/html; charset=utf-8");

このサーブレットの Content-Type は以下のようになります。
Content-Type:text/html;charset=utf-8

JSP

Tomcat は JSP を表示する際、レスポンスヘッダーに Content-Type を UTF-8 でデフォルトで出力します。ですが、明示的に指定した方がよいでしょう。

JSP でレスポンスヘッダーに Content-Type を出力するには、Page ディレクティブで以下のように記述します。

<%@ page contentType="text/html; charset=utf-8" %>

実際には、pageEncoding も指定するようになるでしょう。
<%@ page pageEncoding="utf-8"%>

この JSP の Content-Type は以下のようになります。問題ないですね。
Content-Type:text/html;charset=utf-8


スポンサーリンク





カテゴリー:Java

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA