Cosminexus 機能解説
アプリケーションの構成を基に,文字コード変換の流れを示します。
図G-1 アプリケーションの文字コード変換の流れ
図中の番号((1)〜(5))は,文字コードを考慮する必要のあるプログラムやリソースを表します。また,図中の英字(A〜E)は文字コード変換時のデータの流れを示します。プログラム,リソースで扱う文字コードと注意事項,および文字コード変換の動作と注意事項を,それぞれ表に示します。
表G-1 プログラム,リソースで扱う文字コードと注意事項
プログラム,リソース名 | 項目 | 扱う文字コードおよび注意事項 |
---|---|---|
(1)入力ページ | URLのパス | URLのパスの文字コードは,ISO-8859-1である必要があります。シフトJISなどの非ASCII文字は記述できません。 |
クエリ文字列 | HTMLの<FORM>タグを使用して送信される文字は,フォームを表示しているHTMLページと同じ文字コードでURLエンコードされて送出されます。 | |
POSTデータ | ||
(2)JSP | JSP | 任意の文字コードで作成できます。 Webアプリケーションのバージョン2.4(JSP 2.0仕様)で,JSPドキュメントの文字エンコードを指定する場合は,XML宣言で文字エンコードを指定してください。 JSP 1.2仕様では,JSPの文字コードは,pageディレクティブのpageEncoding属性に記述する必要があります。 |
(3)HTML | HTML | 任意の文字コードで作成できます。 |
(4)データベース | データベース | データベースに格納するデータの文字コードは,ブラウザに表示する文字コードを考慮して決定してください。 |
(5)出力ページ | レスポンスヘッダ | ISO-8859-1である必要があります。非ASCII文字を使用する場合は,URLエンコードする必要があります。 |
レスポンスボディ | ユーザプログラムで任意の文字コードを使用できます。 |
表G-2 文字コード変換の動作と注意事項
変換個所 | 対象 | 文字コード変換時の動作および注意事項 |
---|---|---|
A ブラウザ〜J2EEサーバ | URLのパス | Webコンテナでは,URLのパスの文字コードはISO-8859-1として処理されます。 |
クエリ文字列 | クエリ文字列またはPOSTデータの文字コードは,アプリケーションで任意に決められます。サーブレット,JSPではUnicodeで扱われるので,アプリケーション内で矛盾のないように文字コードを変換してください。 | |
POSTデータ | ||
B J2EEサーバ内 | JSPファイル | pageディレクティブのpageEncoding属性に記述されたエンコーディングでファイルが読み込まれます。pageEncoding属性が省略されている場合は, contentType属性が使用されます。 |
HTMLファイル | HTMLファイルの文字コードのままブラウザに送信されます。 | |
C J2EEサーバ〜データベース | データベース | JDBCドライバによって,Unicodeがデータベース格納文字コードに変換されます。 |
D データベース〜J2EEサーバ | データベース | JDBCドライバによって,データベース格納文字コードがUnicodeに変換されます。 |
E J2EEサーバ〜ブラウザ | レスポンスヘッダ | Webコンテナによって,レスポンスヘッダの文字コードがISO-8859-1に変換されます。 |
レスポンスボディ |
|
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.