Spring Boot 生產環境模板引入錯誤

生產環境引入模板報錯

使用SpringBoot 推薦的模板引擎Thymeleaf時,在Eclipse中運行正常,但打成Jar包運行時,報錯:
template might not exist or might not be accessible by any of the configured Template Resolvers

ERROR (TemplateEngine.java:1085)- [THYMELEAF][http-nio-8
080-exec-10] Exception processing template "/user/userlist": Error resolving template "/user/userlist", template might not exist or might not be accessible by any of the configured Template Resolvers
2018-03-26 11:03:10,444 ERROR (DirectJDKLog.java:181)- Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request proces
sing failed; nested exception is org.thymeleaf.exceptions.TemplateInputException: Error resolving template "/user/userlist", template might not exist or might n
ot be accessible by any of the configured Template Resolvers] with root cause org.thymeleaf.exceptions.TemplateInputException: Error resolving template "/user/userlist", template might not exist or might not be accessible by any of the configured Template Resolvers
        at org.thymeleaf.TemplateRepository.getTemplate(TemplateRepository.java:246)
        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1104)
        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1060)
        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1011)
        at org.thymeleaf.spring4.view.ThymeleafView.renderFragment(ThymeleafView.java:335)
        at org.thymeleaf.spring4.view.ThymeleafView.render(ThymeleafView.java:190)
        at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1286)
        at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1041)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:984)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)

解決方案

修改application.properties 文件

spring.thymeleaf.prefix=classpath:templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=LEGACYHTML5
spring.thymeleaf.cache=false

修改Controller類的返回路徑

@RequestMapping("/user/list")
public String toList() {
    return "user/userlist";
}

其中:
return “/user/userlist”; //在eclipse中運行正常,打成jar找不到模板
return “user/userlist”;//在eclipse中運行正常、Jar形式運行正常

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章