2010年06月13日

Weld-1.0.1-Finalを入れ替えたときに文字化け

前の記事でWeld-1.0.1-Finalの修正版を入れたんだけど、
なんか日本語が文字化けするようになった(・x・

ConversationScopedの開始タイミングが変わったことが原因にありそう。
Filter通る前に、getParameterが呼ばれるので、Tomcatだと、ASCIIな感じでリクエストが解析されちゃうみたい。
というわけで、org.jboss.weld.servlet.ServletLifecycleを書き換える。

  private void restoreConversationContext(HttpServletRequest request)
  {
    // ここから追加
    String enc = request.getCharacterEncoding();
    if(enc == null) {
      try {
        request.setCharacterEncoding("UTF-8");
      } catch(java.io.UnsupportedEncodingException ex) {
      }
    }
    // ここまで追加
    // FIXME: HC "cid"
    conversationManager(request.getSession().getServletContext()).setupConversation(request.getParameter("cid"));
  }
これでおっけーかな(゚ー゚)(。_。)(゚-゚)(。_。)ウンウン
posted by すふぃあ at 21:46| Comment(0) | TrackBack(0) | 雁字
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/38915283

この記事へのトラックバック