2017-01-16 29 views
0

私はSpring Frameworkを学ぼうとしていますが、現在のところ、この問題に悩まされています。何らかの理由で私のマッピングがうまくいかず、そのアドレスにアクセスしようとすると、 404エラーが発生します。Spring @RequestMapping、404エラー

誰かが私が間違っていることを明確にしてもらえますか(上記の春のクラスと問題の原因の両方)?

私はこのビデオに示された例を使ってスプリングを設定しています:YouTube Video、コードは基本的に同じですが、唯一の違いはパッケージ名とJSPファイルの場所です(これは私の問題の原因かもしれませんか? 。

プロジェクト

はIntelliJのアイデアで作られた、以下のリンク(Googleドライブ)に接続されている:私はTomcat8を使用しています私のサーブレットコンテナとして Project Link

(両方9および8.5、ノー葉巻を試してみました)。

HomeController.java

package com.demo.spring.controller; 

import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 

package com.demo.spring.controller; 

import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 

/** 
* Created by ARTERC on 1/16/2017. 
*/ 
@Controller 
public class HomeController { 
    @RequestMapping("/") 
    public String home() { 
     return "home"; 
    } 
} 

WebInit.java

package com.demo.spring.config; 

import org.springframework.context.annotation.Configuration; 
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; 

@Configuration 
public class WebInit extends AbstractAnnotationConfigDispatcherServletInitializer { 

    protected Class<?>[] getRootConfigClasses() { 
     return new Class<?>[]{RootConfig.class}; 
    } 

    protected Class<?>[] getServletConfigClasses() { 
     return new Class<?>[]{WebConfig.class}; 
    } 

    protected String[] getServletMappings() { 
     return new String[]{"/"}; 
    } 
} 

WebConfig.java

package com.demo.spring.config; 

import org.springframework.context.annotation.Bean; 
import org.springframework.context.annotation.ComponentScan; 
import org.springframework.context.annotation.Configuration; 
import org.springframework.web.servlet.config.annotation.EnableWebMvc; 
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; 
import org.springframework.web.servlet.view.InternalResourceViewResolver; 


@Configuration 
@EnableWebMvc 
@ComponentScan("com.demo.spring") 
public class WebConfig extends WebMvcConfigurerAdapter{ 

    @Bean 
    public InternalResourceViewResolver resolver() { 
     InternalResourceViewResolver resolver = new InternalResourceViewResolver(); 
     resolver.setPrefix("/"); 
     resolver.setSuffix(".jsp"); 
     return resolver; 
    } 

} 

home.jspパス:/web/home.jsp

+0

あなたはここにコードを置く必要があります。 – viruskimera

+0

おっと、すみません、忘れました。 Done –

+0

warをpom.xmlに追加するのを忘れましたが、それでも問題は解決しませんでした。マップURLはありますが、まだ404エラーが表示されます。 HTTPステータス404 - /home.jspと表示される何らかの理由で私のビューが別名home.jspになることはありません –

答えて

0

さて、解決策が見つかりました。

  1. 修正ウェブリソースディレクトリ・パスをのpom.xmlする戦争のプラグインを追加します(Webアプリケーションだった)Image Link
+0

warプラグインの追加方法:https://maven.apache.org/plugins/maven-war-plugin/usage。 html –

関連する問題