Cosminexus 機能解説
ブラウザとアプリケーション間で文字コード変換をするときに使用するメソッド,およびJSPとJavaScriptの実装時の注意事項について説明します。
ブラウザを使用して送信されたクエリ文字列,POSTデータは,HttpServletRequestクラスのメソッドを使用して取得します。HttpServletRequestクラスのうち,文字コード変換に関係のあるメソッドと使用時の注意事項を示します。
リクエストのメッセージボディで使われている文字コードを設定します。このメソッドは,getParameterメソッドや,getReaderメソッドを使って入力ストリームから読み込む前に実行されなければなりません。
パラメタの名称を指定して,リクエストに含まれるパラメタの値を取得します。取得した値はURLデコードされ,Unicodeに変換されます。パラメタの名称やパラメタの値を取得する前に,setCharacterEncodingメソッドを用いて文字コードを指定する必要があります。指定しなかった場合,ISO-8859-1としてUnicodeに変換されます。HttpServletRequestクラスのgetParameterNamesメソッド,getParameterValuesメソッド,getParameterMapメソッドも同様です。
リクエストのメッセージボディに含まれているバイナリデータを読み込むためのストリームを取得します。HTMLのフォームから送信されたデータからはエンコードされたままの文字列が取得されるので,取得した文字列を適切な文字コードでデコードする必要があります
リクエストのメッセージボディにBufferedReaderクラスを使い,文字データとして取り出します。文字データはメッセージボディと同じ文字コードに変換されます。HTMLのフォームから送信されたデータからはエンコードされたままの文字列が取得されるので,取得した文字列を適切な文字コードでデコードする必要があります。
リクエストされたURLのパスの後ろに含まれているクエリ文字列を返します。HTMLのフォームから送信されたデータからはエンコードされたままの文字列が取得されるので,取得した文字列を適切な文字コードでデコードする必要があります。
JSPファイルのincludeディレクティブでファイルをインクルードする場合には,インクルード元となるJSPファイルでcontentType属性を使用してエンコードを指定してください。また,JSPファイルの文字コードはpageEncoding属性に指定してください。指定しない場合はインクルード先の文字が正常に表示されない場合があります。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.