discuss_ja@glassfish.java.net

Re: GlasFish v2 ur2 b04 ブート時のロケール

From: Shinya Ogino <Shinya.Ogino_at_Sun.COM>
Date: Tue, 30 Sep 2008 16:27:30 +0900

ソース拝見しました。

うーんフィルタを使うというか、例えば UTF-8 で受けるのであれば、
通常は以下のようにすると思います。塩田さんも書いていましたが。

so129345_at_yo[394] diff -c CharSetServlet.java.bak CharSetServlet.java
*** CharSetServlet.java.bak 2008年 9月 30日 (火)
--- CharSetServlet.java 2008年 9月 30日 (火)
***************
*** 25,30 ****
--- 25,31 ----
      protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
      throws ServletException, IOException {
          response.setContentType("text/html;charset=UTF-8");
+ request.setCharacterEncoding("UTF-8");
          PrintWriter out = response.getWriter();
          try {
              out.println("<html>");

ご参考まで。

荻布

jack_spallaw wrote:
> 荻布 さん、塩田 さん
>
>  大きなイベントが控えているお忙しい中、対応いただき恐れ入ります。
>> 基本的には servlet は仕様上、何も指定しない default の状態だと
>> ISO-8859-1 で受けると思います。setCharacterEncoding() とか使って
>> 指定するのではなかったでしたっけ?
> やはりサーブレットフィルターでエンコードしなおす方法以外ないと言う
> ことですね。
> 実はブログを執筆していて、ここの部分のトピックをアップしようと思っ
> ていたので、(図々しい話ですが・・・汗)質問させていただきました。
>
> To) 荻布さん
> ソースコード添付いたします。
> 味も素っ気もないですが、宜しくお願いします。
> ネットビーンズプロジェクトそのまま丸ごと送付いたします。
> (あんまり見せたくない恥ずかしいコードですが・・・(-_-;))
>
>> 竹内さん、こんにちは、
>>
>> ミーティングなどでばたばたして返事が遅くなってしまいました。
>>
>> 基本的には servlet は仕様上、何も指定しない default の状態だと
>> ISO-8859-1 で受けると思います。setCharacterEncoding() とか使って
>> 指定するのではなかったでしたっけ?
>>
>> shioda
>>
>> 2008/09/30 15:31 Shinya Ogino <Shinya.Ogino_at_sun.com>:
>>> こんにちは。
>>>
>>> サーブレットのソースを見せてもらえますか?
>>>
>>> 荻布
>>>
>>> jack_spallaw wrote:
>>>> こんにちは、竹内です。
>>>>
>>>> いつもセミナーのたび、聞きそびれてしまうのですが、
>>>> 表記の件、会社の windows マシンで試した結果、
>>>> デフォルトは iso-8859-1 (as Latin1) のようです。
>>>> 因みに setup.xml も同じロケールでエンコーディング
>>>> されているようですね。
>>>> で、domain.xml を覗いたのですが、2箇所に、 iso-8859-1
>>>> の記述がされていました。
>>>> 以下 domain.xml より抜粋
>>>> <http-protocol dns-lookup-enabled="false" version="HTTP/1.1"
>>>> forced-type="text/html; charset=iso-8859-1" default-type="text/html;
>>>> charset=iso-8859-1" forced-response-type="AttributeDeprecated"
>>>> default-response-type="AttributeDeprecated" ssl-enabled="true"/>
>>>>
>>>> それと default-web.xml の書式宣言にも iso-8859-1 の記述があります。
>>>>
>>>> この辺が関係しているのかと思い、以前にここの設定を UTF-8 に変えて試した
> の
>>>> ですが、変わりませんでした。
>>>> 致し方なくサーブレットフィルター経由で変換しなおして、 POST 時のフォーム
>>>> データを UTF-8 として扱えるようにした記憶があります。
>>>>
>>>> この辺の設定方法は、 AdministrationReference から読みとるしかないですか
> ね?
>>>> 因みに Admin-gui-console に設定がないか探して見たのですが、見つけること
> が
>>>> できませんでした。
>>>>
>>>> ご存知の方、お忙しい中、恐れ入りますが、ご教示のほど、宜しくお願い申し上
> げま
>>>> す。
>>>>
>>>> 検証に使用したアプリケーションを添付します。
>>>>
>>>> ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>>>> ☆  株式会社エマーズ
>>>> ★   受託・金融開発事業本部
>>>> ☆   金融システム開発部 オープングループ
>>>> ★    竹内 慎助
>>>> ☆  TEL:03-3464-4368 FAX:03-3464-4484 MBTEL:
> 090-1351-4961
>>>> ☆
>>>> ★  E-mail:XBL08325_at_nifty.com
>>>> ☆  http:www.emas.co.jp
>>>> ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
>>>>
>> >