jpmobile は 0.0.5 でしょうか。
またフィルターは何を使ってますか?
手元の環境が Rails 2.3.5 + jpmobile 0.0.7 しかないので、
検証できないのですが、どの文字がどう化けるのかわかりますか?
--------
小川 伸一郎 (Shin-ichiro OGAWA)
rust....@gmail.com
GPG ID 94B70E36 / 75360751
fingerprint: {C64E 9826 8A75 723E DE54 / 70A8 F623 220C 94B7 0E36}
http://stnard.jp/
http://twitter.com/conceal_rs/
http://iddy.jp/profile/rust/
2010/6/23 naopontan <naop...@gmail.com>:
> --
> このメールは Google グループのグループ「jpmobile」の登録者に送られています。
> このグループに投稿するには、jpmo...@googlegroups.com にメールを送信してください。
> このグループから退会するには、jpmobile+u...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/jpmobile?hl=ja からこのグループにアクセスしてください。
>
>
> jpmobile は 0.0.5 でしょうか。
えーっと、バージョン確認は...
vendor/plugins/jpmobile/CHANGELOG には 0.0.3 とあります。
> またフィルターは何を使ってますか?
以下の情報で良いでしょうか。
◆コントローラ
./controllers/application.rb: mobile_filter :hankaku=>true
◆view
app/views/sessions/new_mobile.html.erb
> 手元の環境が Rails 2.3.5 + jpmobile 0.0.7 しかないので、
> 検証できないのですが、どの文字がどう化けるのかわかりますか?
見た方が分かりやすいと思うので画像をキャプチャしました。
- bakenai.png: 化けない版: FireMobileSimulator にて 「SB V602T(P6型)」を選択
- bakeru*.png: 化けちる版: FireMobileSimulator にて 「SB SoftBank 930SH(3GC型)」を選択
2010年6月23日14:29 Shin-ichiro OGAWA <rust....@gmail.com>:
> えーっと、バージョン確認は...
> vendor/plugins/jpmobile/CHANGELOG には 0.0.3 とあります。
すみません、これは0.0.7まで変更されていませんでしたorz
とりあえず、Rails 2.1.2 + jpmobile 0.0.3, 0.0.4, 0.0.5 で確認しましたが、
簡単な例では再現しませんでした。(文字化けしない)
- app/controllers/top_controller.rb
class TopController < ApplicationController
mobile_filter :hankaku => true
def index
end
end
- app/views/top/index.html.erb
bake<br />
化ける?<br />
漢字。表。<br />
- app/views/layouts/application.html.erb
<html>
<head>
<title>エントリーシステム</title>
</head>
<body>
<div align="center">エントリーシステム</div>
<%= yield -%>
</body>
</html>
もし可能なら、ビューとコントローラの該当部分など見せていただければ
検証できるかも知れません。
# MLに投げるのがまずそうなら、直接メールでも大丈夫です。
細かいところまで確認下さって、本当に感謝致します。
小川さんの環境で再現しなかったとの事で、こちらで調査したところ原因が判明しました。
以下のロジックが悪さしてました。
class ApplicationController < ActionController::Base
before_filter :set_content_type
def set_content_type
headers["Content-Type"] = ((request.mobile?) ?
"application/xhtml+xml; charset=Shift_JIS" : "text/html;
charset=UTF-8")
end
end
上記のメソッドを削除する事で解決したようです。
はずかしながら、このロジックを入れた経緯を覚えていません(subversionログ見ても不明)
恐らく、
http://koress.jp/2009/01/jpmobile_restful_authenticatio.html
を参考にしたと思います。
この辺りは実は以前に、このMLに質問を投げています。
http://groups.google.co.jp/group/jpmobile/browse_thread/thread/9e65c1ecbe05d151
ここで色々試行錯誤して入り込んじゃったのかなぁ…
という事で、これで様子を見たいと思います。
2010年6月23日16:38 Shin-ichiro OGAWA <rust....@gmail.com>:
解決して何よりです。
強制的にcharset=Shift_JISになっていたにもかかわらず、
SoftBankはUTF-8で出力したため、
文字化けしていたようですね。