2016-04-15 4 views
4

指定ルートのすべてのルートについて、htmlファイル(/src/main/resources/static/folder/index.html)を静的に提供する必要があります(as example '/main/\**')。私は春ブーツでこれを行うことができますどのように、だから... ...スプリングブート - 指定されたルートにある複数のルートに対して1つの静的なhtmlファイルを提供する方法

を私は@RequestMapping("/main/**")とコントローラのメソッドに注釈を付けることを試みましたが、それだけで'/main'ルートのではなく、「/main/foo''/main/foo/bar'、等のために働きますか?

+0

ここで説明したようにそれは、ビューコントローラを追加することによって行われます。http://stackoverflow.com/questions/27381781/java-spring-boot-how-to-map-my-app-root-to-index-html spring javadocのドキュメントによるとhttps://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/config/annotation/ViewControllerRegistry.html#addViewController-java.lang.String-具体的なパスやパターンからマップすることができます。これは必要なものです。 –

+0

フォーマットが改善されました – Pavya

+0

thats odd、それは私のために働いているようです –

答えて

3

私はこの解決策を見つけた:

// application.properties 
spring.mvc.view.prefix=/ 
spring.mvc.view.suffix=.html 


// Controller for index.html 
@Controller 
public class IndexController { 

    @RequestMapping({"/login", "/main/**"}) 
    public String index() { 
     return "index"; 
    } 
} 
1

設定オブジェクトを追加/編集する必要があります。ここで

はそれを行うための我々の方法である:

@Configuration 
@EnableWebMvc 
public class WebConfiguration extends WebMvcConfigurerAdapter { 
    public static final String INDEX_VIEW_NAME = "forward:index.html"; 



    public void addViewControllers(final ViewControllerRegistry registry) { 
     registry.addViewController("/").setViewName(INDEX_VIEW_NAME); 
     registry.addViewController("/login").setViewName(INDEX_VIEW_NAME); 
     registry.addViewController("/logout").setViewName(INDEX_VIEW_NAME); 
    } 
} 
関連する問題