2017-08-23 10 views
0

まず第一に私の質問が正しい質問であるかどうかわかりませんので、私はそれを説明するつもりです。私はSpring MVCが新しく、テキストをクリックしてhello.htmlにリダイレクトしてコントローラを試してみるという例を試していますが、何らかの理由でRequest Mappingを持つControllerを作成したにもかかわらずファイルを見つけられません。ここでSpring MVCでControllerとRequest Mappingを使って "Not Found" htmlを修正するには?

私のコントローラはcom.springapp.controllersパッケージにHelloWorldControllerです:

package com.springapp.controllers; 
 

 
import org.springframework.stereotype.Controller; 
 
import org.springframework.web.bind.annotation.RequestMapping; 
 
import org.springframework.web.bind.annotation.RequestMethod; 
 
import org.springframework.web.servlet.ModelAndView; 
 

 
@Controller 
 
public class HelloWorldController 
 
{ 
 

 
    @RequestMapping("/hello") 
 
    public ModelAndView hello() 
 
    { 
 
     String message = "Hajimemashite!"; 
 
     return new ModelAndView("hello", "message", message); 
 
    } 
 

 
}

そして、私のディスパッチャ-servlet.xmlに、私はコードの行を持っています:

<context:component-scan base-package="com.springapp.controllers" />
0ここで

は私のindex.jspを

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
 
    "http://www.w3.org/TR/html4/loose.dtd"> 
 

 
<html> 
 
    <head> 
 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
 
     <title>Spring App Try</title> 
 
    </head> 
 

 
    <body> 
 
     <a href="hello.html">Click Here</a> 
 
    </body> 
 
</html>

と私のHello.jspのである

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
 
<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
 
     <title>JSP Page</title> 
 
    </head> 
 
    <body> 
 
     ${message} 
 
    </body> 
 
</html>

正しく動作しているかどうかわかりません。私が間違っていると誰かが私を助けて私を啓発することはできますか?これまでのところ私は@RequestMapping(value="/hello")と私のHelloWorldControllerに@RequestMapping("/hello")を交換しようとしましたが、私は同じ結果「ここをクリック」をクリックしようとしたとき:

Result When Clicking the "Click Here"

を私はまた、hello.htmlするHello.jspのを交換しようとしたが、それまだ動作しません。

答えて

0

お試しhttp://localhost:8080/Spring_HelloWord_App/hellohttp://localhost:8080/Spring_HelloWord_App/hello.htmlはコントローラメソッドにマップされていません。

+0

こんにちは、わかりました。私は働いています。ありがとうございました –

0

@shazinで述べたように、hello.htmlではなく/ helloにURLを設定する必要があります。それがあなたのコントローラーを呼び出すことを確認してください。コントローラが呼び出された後、hello.jspファイルを見つけるためにビューリゾルバも設定する必要があります。参照先ViewResolver

関連する問題