本当に厄介な問題があります...コントローラーハンドラーマッパーを定義していないため、DefaultAnnotationHandlerMapping
クラスを使用しています。私の問題は、ControllerクラスへのController Bean名のマッピングと関係があるようです。
ディスパッチャへの受信リクエスト -> index.htm
次のコントローラ クラスを使用します。
@Controller
public class IndexController {
@RequestMapping(value = "/index.htm", method = RequestMethod.GET)
public String loginForm(ModelMap model) {
return "index";
}
}
index.htm を indexController Bean にマップしてから、IndexController クラスにマップする必要があります。ログから、Spring がコンテナーに Bean を登録したことを確認できますが、次のエラーが発生します。
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [xxx.controller.IndexController]
クラスが存在することは確かです (Bean 名はそこから派生しているため)。
奇妙なことに、コントローラーに Bean 名と同じ名前を付けると (例: indexController)、すべて問題ありません!! (明らかに、クラスの最初の文字を小文字にしたくありません!!)
私のdispatcher-servlet.xmlで以下を使用したことに注意してください。
<mvc:annotation-driven />
<context:component-scan base-package="xxx" />
Jラブ