障害報告を受けて調査していると、
SimpleDateFormat#parse()でNumberFormatExceptionが出ていました。
ドキュメントにあるように変換に失敗したときはParseExceptionがthrowされるものだと思っていたので、
すわバグパレード行きかと思ったら、どうやらSimpleDateFormatをマルチスレッド環境下で使った場合の問題らしいことが判明。
java.text.SimpleDateFormat はスレッドセーフではないがよくまとまっています。
SimpleDateFormatをマルチスレッド下で使ってはならないというtipsは知っていたのですが、
その場合の症状としてNumberFormatExceptionがthrowされることがある、というのは知りませんでした。
投稿日時 : 2007年10月30日 21:17