非常に単純な Spring @mvc アプリを動作させようとしていますが、マッピング エラーのように見えます。
web.xml から:
<servlet>
<servlet-name>works</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>works</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
コントローラー:
@Controller
@RequestMapping("/test")
public class TESTController {
private static Logger appLogger = Logger.getLogger("AppLogFile");
public String serviceRequest( Model model)
{
appLogger.info("======================= TESTController GET ===============================");
model.addAttribute("returnString","TESTController handled the request") ;
return "SingleStringView";
}
Works-servlet.xml:
<context:component-scan base-package="com.ami.dbconnect.controller" />
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>
<bean id="TESTController" class="com.ami.dbconnect.controller.TESTController"></bean>
<!-- view resolver not shown -->
アプリは、/webapps/works で Tomcat 7 にデプロイされます。Tomcat ファイルの構造は次のとおりです。
webapps
/works
/WEB-INF
/classes
/lib
URL でコントローラーを呼び出そうとしています: localhost:8080/works/test
tomcat7-stdout には次のように表示されます。
1106 [pool-2-thread-1] DEBUG org.springframework.web.servlet.DispatcherServlet - [org.springframework.web.servlet.FrameworkServlet.CONTEXT.works] という名前の ServletContext 属性としてサーブレット 'works' の公開された WebApplicationContext
1106 [pool-2-thread-1] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'works': 初期化は 728 ミリ秒で完了しました
1106 [pool-2-thread-1] DEBUG org.springframework.web.servlet.DispatcherServlet - サーブレット「動作」が正常に構成されました
14068 [http-apr-8080-exec-2] DEBUG org.springframework.web.servlet.DispatcherServlet - 名前が「works」の DispatcherServlet が [/works/test] の GET リクエストを処理しています
14071 [http-apr-8080-exec-2] 警告 org.springframework.web.servlet.PageNotFound - 名前が「works」の DispatcherServlet で、URI [/works/test] の HTTP リクエストのマッピングが見つかりません
だから私の質問(最後に!):Springはコントローラーの注釈を認識していませんか?そうでない場合、この単純なセットアップで何が問題になっている可能性がありますか?
助けやアドバイスをありがとう、beeky