2017-12-26 21 views
0

私のプロジェクトで@EnableWebMvcアノテーションを追加すると、webjarsとfaviconがマップされません。私はこの注釈を削除すると、それは問題なく動作している@EnableWebMvc annotationが春の起動時にいくつかのマッピングに影響しています

No mapping found for HTTP request with URI [/webjars/bootstrap/4.0.0-beta.2/css/bootstrap.min.css] in DispatcherServlet with name 'dispatcherServlet' 
    No mapping found for HTTP request with URI [/webjars/jquery/3.2.1/jquery.min.js] in DispatcherServlet with name 'dispatcherServlet' 
    No mapping found for HTTP request with URI [/favicon.ico] in DispatcherServlet with name 'dispatcherServlet' 

、その理由は何です:私は内部webjarsを呼び出すインデックス・ページをロードする際

私はこの警告を取得していますか?どうすればこの問題を解決できますか?

私も、これだけのように「NoHandlerFoundException」を処理するためにこの注釈が必要になります。

@ControllerAdvice 
public class ControllerExceptionHandler { 


    @ExceptionHandler(NoHandlerFoundException.class) 
    public ModelAndView handlerNoHandlerFoundException() { 

     ModelAndView modelAndView = new ModelAndView(); 
     modelAndView.setViewName("errorpage"); 
     modelAndView.addObject("errorTitle", "404 Not Found "); 
     modelAndView.addObject("errorDescription", "The page you are looking for is not available now!!! "); 
     System.out.println("ERROR :::::::::::::::::::::: no handler"); 
     return modelAndView; 
    } 

} 

あなたはこのような状況のために何をお勧めですか?

+0

アノテーションを削除しても問題なく機能している場合は、何が問題なのですか?アノテーションを持っていないだけです。 – eis

+0

@eis例外処理のためにこの注釈も必要です –

+0

質問に必要な例外処理の詳細を追加してください。 – eis

答えて

3

Per the Spring Boot documentationを使用すると、@EnableWebMvcを使用すると、MVC自動設定が無効になり、必要なものを正確に提供することができます。この場合、デフォルトのリソースとWebJarのマッピングがオフに切り替わります。

*Configurerなどの設定をカスタマイズするために他の手段を使用することも、@EnableWebMvcで正確に指定することもできます。デフォルトの値を調べ、必要な部分をコピーするには、BootのWebMvcAutoConfigurationを参照してください。

関連する問題