View Javadoc
1   package pk.lucidxpo.ynami.spring;
2   
3   import org.springframework.context.annotation.Configuration;
4   import org.springframework.web.servlet.config.annotation.EnableWebMvc;
5   import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
6   import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
7   import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
8   
9   import static java.util.concurrent.TimeUnit.DAYS;
10  import static org.springframework.http.CacheControl.maxAge;
11  import static pk.lucidxpo.ynami.spring.security.SecurityConfig.LOGIN_PAGE_URL;
12  
13  @EnableWebMvc
14  @Configuration
15  public class MvcConfig implements WebMvcConfigurer {
16  
17      @Override
18      public void addResourceHandlers(final ResourceHandlerRegistry registry) {
19          registry.addResourceHandler(
20                          "/css/**",
21                          "/js/**",
22                          "/img/**",
23                          "/webjars/**"
24                  ).addResourceLocations(
25                          "classpath:/static/css/",
26                          "classpath:/static/js/",
27                          "classpath:/static/img/",
28                          "classpath:/META-INF/resources/webjars/"
29                  ).setCacheControl(maxAge(30L, DAYS).cachePublic())
30                  .resourceChain(true);
31      }
32  
33      @Override
34      public void addViewControllers(final ViewControllerRegistry registry) {
35          registry.addViewController(LOGIN_PAGE_URL).setViewName("login");
36      }
37  }