我使用mvc+java HttpServlet+Thymeleaf模板,但它是错误的。文件home.html已经存在。
我的代码如下:
ServletContextTemplateResolver templateResolver
= new ServletContextTemplateResolver();
// XHTML is the default mode, but we will set it anyway for better understanding of code
templateResolver.setTemplateMode("HTML5");
templateResolver.setPrefix("D:\\development\\projects\\fpt.eclick.framework.web.thyme\\views\\");
templateResolver.setSuffix(".html");
templateResolver.setCacheTTLMs(3600000L);
TemplateEngine templateEngine = new TemplateEngine();
templateEngine.setTemplateResolver(templateResolver);
WebContext ctx = new WebContext(request, response, request.getServletContext(), request.getLocale());
try {
templateEngine.process("home", ctx, response.getWriter());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
response.setContentType("text/html;charset=UTF-8");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 1000);
与Freemarker我使用类似,它做得很好。
非常感谢
问题在于模板目录的位置(前缀)。将其更改为web应用程序上下文根中可用的内容,例如/WEB-INF/templates
。
第一次发帖时,请纠正我的错误。虽然我没有偏离文件夹结构的默认映射,但我认为我应该在设置中添加。 每当我请求/home映射时,就会得到一个TemplateInputException HomeController类:
现在我得到了另一个错误: 有人能帮我解释为什么我必须依赖thymleaf来提供html内容,为什么我会得到这个错误。
我已经配置了Spring-Servlet: 我的瓷砖定义是: 这会给我以下错误吗: 它工作得很好。 所以问题是Thymeleaf能接受我的文件夹结构吗?如果是,怎么做?
我正在学习Spring Boot、Thymeleaf和Spring Data JPA。我为自己创建了一个示例项目,在那里我可以学习所有这些东西。我在这里不问很多问题,因为通常这是一些愚蠢的错误,我对此感到厌恶。然而,我被这一个错误卡住了,我别无选择。 这是我的项目结构:项目结构 这是我的控制器: 整个应用程序可以在这里看到。我还得到警告:找不到模板位置:classpath:/templates/(
pom文件: 当我尝试打开localhost:8080/users页面时 Whitelabel错误页面此应用程序没有针对/Error的显式映射,因此您将其视为一种后退。 我不知道如何添加页眉和页脚
这个问题以前被问过,但我没有解决我的问题,我得到了一些奇怪的功能。 如果我将文件放在静态目录中,如下所示: 我在浏览器中得到以下错误: 在这一点上,我不知道是怎么回事。有人能给我一些建议吗? 我在中遗漏了一个错误,但我仍然得到相同的错误