intra-mart(iAP)の起動時にNoClassDefFoundErrorが発生して起動しない。
ログを見るとwrong nameと言われており、指定クラス名と実際のクラス名が異なるようだ。よく見ると、大文字と小文字が異なっている。
そこで、この間違っている方のクラス名を使っている箇所をeBuilderやResin上でGrepしてみる…が、ヒットしない。むむ…?
原因と解決策
こういったケースの原因は、「誤った名称のクラスが既にresin側に存在する」ということ。
つまり、resin側の WEB-INF/classes の配下に誤った名称のクラスファイルが存在している筈である。
これを削除して再度クラスファイルを生成(eBuilder上でプロジェクトをクリーン)してやれば、解消する。
SVN更新などによってファイルが書き換えられ、クラス名の大文字小文字だけが修正された場合に発生するようだ。