なぜ自分でバグを修正できなかったか。


バグの症状:
サーブレットがレスポンスで出力するHTMLが文字化け。

【t_nagataのダメだった思考】

文字化け発生

(ブラウザかエディタかHTMLかHttpServletResponseオブジェクト(以下、responseオブジェクト)の
どれかの文字コード設定がおかしいんだろう)

総当り的に修正して、全てUTF-8にする

直らない・・・

ぐぐる

【Yoshioriさんの思考】

まず問題の切り分け(←ここに尽きるかもしれない)

どこで文字化けが起こっているかを考える。

順番に調べていって
responseオブジェクトがおかしいと目星を付ける

でも、設定は全てOKっぽいのに文字化けするので、JavaDoc見てみる。

getWriter()が呼ばれる前に文字コード設定しなければいけないことが判明する。

ちなみに、Yoshioriさん自身にこのバグの経験は無かったらしいです。
この考え方の違い、レベルの差はかなり大きいことを自分に戒めるべき・・・!


※responseオブジェクトの文字コード設定はsetContentType()、setCharacterEncoding()で。

P.S.
僕、たまに語尾を「・・・!」こんな風にするけど元ネタはカイジです。
なので、"・・・"の部分に何も含みはないです。