我正在实现密码重置功能。为了显示具有这种功能的网页,我使用了百里香。但是当我调用我的简单的demo.html页面(见下面的代码)时,它抛出以下错误:
出现意外错误(类型 = 内部服务器错误,状态 = 500)。
异常解析文档:模板=“演示”,第 10 行 - 列
豆配置:
@Bean
public ClassLoaderTemplateResolver emailTemplateResolver(){
ClassLoaderTemplateResolver emailTemplateResolver = new ClassLoaderTemplateResolver();
emailTemplateResolver.setPrefix("templates/mail/");
emailTemplateResolver.setSuffix(".html");
emailTemplateResolver.setTemplateMode("HTML5");
emailTemplateResolver.setCharacterEncoding("UTF-8");
emailTemplateResolver.setOrder(1);
return emailTemplateResolver;
}
演示. html:
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<form th:action="@{/resetpassword(_key=${resetPasswordToken})}" method="post">
<div>
<input type="password" th:field="*{password}">
<input type="password">
</div>
</form>
</body>
</html>
控制器:
@RequestMapping(value = "/resetpassword", method = RequestMethod.GET)
public String resetpasswordView(@RequestParam(value = "_key") String resetPasswordToken, final Model model) {
System.out.println(resetPasswordToken);
model.addAttribute("resetPasswordToken", resetPasswordToken);
return "demo";
}
我错过了什么?
默认情况下,百里香要求你的模板是有效的XML。您还没有关闭<代码>
您可以通过关闭标签来解决问题:
<input type="password" th:field="*{password}" />
或者,您可以使用Thymeleaf的传统HTML5模式,但它需要更多设置。
下面是index.html 它们在不同的文件夹中,但pathing应该工作,除非我只是错过了一些真正愚蠢的东西。
所以,我看到在Stackoverflow中都能回答这个问题,但对我没有任何帮助。(SpringMVC+Thymeleaf,错误消息是:模板可能不存在,或者任何已配置的模板解析程序都无法访问
模板解析类可以对你视图文件中的伪变量进行简单的替换,它可以解析简单的变量和变量标签对。 如果你从没使用过模板引擎,下面是个例子,伪变量名称使用大括号括起来: <html> <head> <title>{blog_title}</title> </head> <body> <h3>{blog_heading}</h3> {blog_e
我的angular 2组件有以下模板,但它抛出了一个模板解析错误。 这是错误消息-我的
编译器输出: 18:4:错误:重新定义'模板T随机::get(T, T)'12:4:注意:'模板T随机::get(T, T)'之前在这里声明在函数'int main()': 28:44:错误:没有匹配函数调用'get(浮动,浮动)'28:44:注意:候选是: 12:4:注意:模板T随机::get(T, T)12:4:注意:模板参数推导/替换失败: 这项工作很好: 还有这个: 为什么编译器无法在第一
日安, 我收到的错误与标题相同,另外下一行是 在org.thymeleaf.templateparser.markup.abstractmarkuptemplateparser.parse(abstractmarkuptemplateparser.java:241)