事象
tomcat使ってるシステムで500エラーが出て正常にページが表示されず、
スタックトレースに
Unknown class
が出力されていた。
Unknown class に書かれているクラス名とメソッド名は存在しているはずなのに、web.xmlもおかしくない。
tomcatの再起動も行った。
原因
よく見てみたら、.classファイルが無かった。
「sample.class」
というclassは存在していたのだけど、スタックトレースで、存在しないと言われていたのが
「sample$1.class」
だった。
よく見ろって話ですな。
対応
- 「sample$1.class」をアップロード
- tomcat 再起動
- 動作確認→正常
(ダラー番号、ドル番号、ドル記号番号)がclassのファイル名につく
まずこの「$番号」がついてるファイルは存在していても問題ない。
こいつの意味はぐぐってみると回答がでてくるぞよ。(なるほどわからん。という感じではあったが。)
コメント