Я пишу небольшое веб-приложение с использованием Spring-Boot & Thymeleaf, но значения, передаваемые из контроллера в html-страницу, не отображаются.
Не знаю почему, но это не работает.
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- thymeleaf -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
Конфигурация
@Configuration
public class ThymeleafConfig {
@Bean
public SpringResourceTemplateResolver templateResolver() {
SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
templateResolver.setCacheable(false);
templateResolver.setPrefix("/");
templateResolver.setSuffix(".html");
templateResolver.setCacheable(false);
return templateResolver;
}
@Bean
public SpringTemplateEngine templateEngine() {
SpringTemplateEngine springTemplateEngine = new SpringTemplateEngine();
springTemplateEngine.addTemplateResolver(templateResolver());
return springTemplateEngine;
}
@Bean
public ThymeleafViewResolver viewResolver() {
ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
viewResolver.setTemplateEngine(templateEngine());
viewResolver.setOrder(1);
viewResolver.setViewNames(new String[] {".html", ".xhtml"});
return viewResolver;
}
Это
контроллер
@Controller
@RequestMapping("/dyn")
public class DynamicWebPage {
@RequestMapping(value = "/third", method = RequestMethod.GET)
public ModelAndView fileDinamicoTerzo() {
Map<String, Object> model = new HashMap<>();
model.put("messagge", "ciao");
ModelAndView mav = new ModelAndView();
mav.addAllObjects(model);
mav.setViewName("forward:provadin.html");
return mav;
}
}
это HTML-файл, здесь я должен увидеть значение данных, через которые я прошел ...
HTML шаблон
<div th:text="${message}">${message}</div>
<div th:utext="${message}">${message}</div>
<div th:value="${message}">${message}</div>
<div data-th-text="${message}"></div>
<div th:inline="text">[[${message}]]</div>
<div th:inline="text">[[${model.message}]]</div>
и это результат
${message}
${message}
${message}
[[${model.messagge}]]
[["${model.messagge}"]]
Может кто-нибудь сказать мне, как решить эту проблему?
Извините за мой английский