2016-07-16 65 views
0

我在Spring Boot应用程序中添加了ThymeleafConfig,因此我可以将模板模式配置为HTML5。在添加之前,Spring Boot应用程序可以找到home.html模板。现在加入它后,我得到一个:在Spring Boot中对ThymeleafConfig感到困惑

org.thymeleaf.exceptions.TemplateInputException: Error resolving template "home", template might not exist or might not be accessible by any of the configured Template Resolvers 

我的目录结构是一个标准的资源/模板/ home.html的

这里是我的ThmyeleafConfig:

import org.springframework.context.annotation.Bean; 
import org.springframework.context.annotation.Configuration; 
import org.springframework.context.support.ResourceBundleMessageSource; 
import org.thymeleaf.templateresolver.ServletContextTemplateResolver; 

@Configuration 
public class ThymeleafConfig { 

    @Bean 
    public ServletContextTemplateResolver defaultTemplateResolver() { 
     ServletContextTemplateResolver resolver = new ServletContextTemplateResolver(); 
     resolver.setPrefix("/templates/"); 
     resolver.setSuffix(".html"); 
     resolver.setTemplateMode("LEGACYHTML5"); 
     resolver.setCacheable(false); 
     return resolver; 
    } 

    @Bean 
    public ResourceBundleMessageSource messageSource() { 
     ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource(); 
     messageSource.setBasename("messages"); 
     messageSource.setDefaultEncoding("UTF-8"); 

     return messageSource; 
    } 
} 

我敢肯定我我已经遵循了这些例子,但显然有一些我错过了。任何建议如何我可以解决这个问题,以便它找到正确的模板?

+0

为什么你需要添加这个?百灵叶已经由Spring Boot为您配置了? –

+0

这是,但问题是,像这样的angularjs指令无法解析。所以我看到的建议是将模式设置为LEGACYHTML5或HTML5而不是默认设置。我会尝试安迪在下面显示的内容,但我愿意接受其他解决方案,并且有兴趣知道我在这里做了什么具体的错误。 –

回答

2

有没有必要申报自己的豆。你可以使用application.properties配置模式:

spring.thymeleaf.mode=LEGACYHTML5