2016-11-21 144 views
0

我剛開始一個新的Spring Boot(帶有Spring Security)和Thymeleaf項目。由於我想集成靜態資源,我嘗試了不同的文件結構,但都沒有,Spring將文件綁定到了這個文件中。 因爲我沒有改變靜態資源路徑,所以我的控制檯在啓動時輸出Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]Spring Boot Thymeleaf靜態內容不加載

不同的文件結構,我試過,沒有成功。

src 
|--main 
    |--java 
    |--resources 
     |--static 
      |--css 
      |--bootstrap.min.css 
      |--custom_test.css 
      |--templates 
      |--.... 

src 
|--main 
    |--java 
    |--resources 
     |--webjars   
      |--static 
      |--css 
       |--bootstrap.min.css 
       |--custom_test.css 
     |--templates 
      |--.... 

src 
|--main 
    |--java 
    |--resources 
     |--public 
      |--css 
      |--bootstrap.min.css 
      |--custom_test.css 
      |--templates 
      |--.... 

在HTML/Thymeleaf我試圖

<link rel="stylesheet" type="text/css" href="webjars/static/css/bootstrap.min.css"/> 
    <link rel="stylesheet" type="text/css" href="webjars/static/css/custom_test.css"/> 

<link rel="stylesheet" type="text/css" th:href="@{/css/bootstrap.min.css}"/> 
    <link rel="stylesheet" type="text/css" th:href="@{/css/custom_test.css}"/> 

到目前爲止,這一切都沒有奏效。 我真的希望你能幫助我和其他人一樣的問題。 在此先感謝!

+0

的可能的複製[春的IntelliJ項目引導找不到與Thymeleaf我的CSS文件] (http://stackoverflow.com/questions/40452365/intellij-spring-boot-project-cant-find-my-css-files-with-thymeleaf) – DimaSan

回答

0

您的問題可能是Spring Security的配置。首先,與您的瀏覽器的開發人員工具進行覈對,看看您在客戶端上無法獲得的資源的響應情況。響應狀態碼可能是302或401,具體取決於您當前的配置。

如果是這樣的話,你需要一個額外的配置添加到您的項目,如下所示:

@Configuration 
@EnableWebSecurity 
public class WebSecurityConfig extends WebSecurityConfigurerAdapter 
{   
    @Override 
    protected void configure(HttpSecurity http) throws Exception 
    { 
     http.authorizeRequests() 
       .antMatchers("/").permitAll() 
       .antMatchers("/favicon.ico").permitAll() 
       .antMatchers("/css/**").permitAll() 
       .antMatchers("/js/**").permitAll() 
       .antMatchers("/static/**").permitAll() 
       .antMatchers("/images/**").permitAll() 
       .antMatchers("/blog/**").permitAll() 
       .anyRequest().authenticated() 
       .and() 
       .formLogin() 
       .loginPage("/login") 
       .permitAll() 
       .and() 
       .logout() 
       .permitAll(); 
    } 
// ... 
} 
+0

它確實是一個302響應代碼。先生,非常感謝您的幫助! – Marius

相關問題