モバイルWebフォーム + ezWebで文字化け
誰も使っていやしないASP.NETのモバイルWebフォーム(Mobile Controls)と格闘しています。
なんと、Visual Studio 2005 + ASP.NET 2.0 + Windows Server 2003の環境ですと、標準の状態で、モバイルWebフォームをezWeb端末で閲覧すると、日本語が文字化けするようです。
端末は、
Accept-Charset:shift_jis
Accept-Language:ja-jp
でRequestしているにもかかわらず、モバイルWebフォームは
でResponseしてきやがります。リアル端末もOpenwave SDKも同様の動き。
とりあえず、手元のドコモ端末P902iでは文字化けしなかったんですが、こっちはutf-8を読んでいるのかも知れません...。
おっかしーなー、といろいろトライしたものの、全くどうにもならず、web.configに、
を付けてみたりもしたのですが、効果無し。
なんなんだ! むがー!!
と八方ふさがりで、テクニカルサポートに電話しましたよ。
そしたら、↓を試してくれ、と言われ
ASP.NET で ¥ マークが表示されない
http://support.microsoft.com/kb/900838/ja
Windows Server 2003のbugなんですが、web.configの
を入れてみたところ、スッキリサッパリ直ってしまいました。
今までの苦労はなんだったんだー!!
という感じ。
ひょっとしたら、うちの環境が多少壊れてる部分もあるかも知れませんが、おそらく、Windows Server 2003 SP1とVS2005でモバイルWebフォームを作ると規定値で文字化けを起こします。
日本語版としてはありえないですね。
「これまでこういう問い合わせはないんですか?」
「そうですねぇ、今のところないようです」
「いかにモバイルWebフォームが使われてないか、ってことですよね...」
「そうなんですよ...」
というようなやり取りをしてしまいました...(涙)。
ちゅーか、テストしてなかったんかよ! むがー!!
とりあえず、スムースに話は進んで、インシデントも減らなかったから良しとするか...。2時間近くカット&トライで悩んだのは何だったのか...。まー、それ以上粘らずに、電話して良かったということで。
あ、そうそう、余談ですが、VS2005でモバイルWebフォームのサイトを作るとき、web.config(構成ファイル)が、通常のASP.NET用と多少違うようなので要注意です。
項目の追加で、「モバイルWeb構成ファイル」とゆーのがあるのでそれを使いましょう。
流れとしては、ASP.NET Webサイトプロジェクトを作成するのではなく。
- プロジェクトの追加 - 新しいWebサイト
- 空のWebサイトを作成
- モバイルWeb構成ファイル の追加
- web.configに
を追加(iモード用) - モバイルWebフォームの追加
とすると良いでしょう。