Я использую th:replace
для включения шаблонов в Thymeleaf следующим образом
master. html
<div class="faq-wrapper">
<div th:each="faq : ${faqs}" th:remove="tag">
<div th:replace="content-faq-card"></div>
</div>
</div>
content-faq-card. html
<div class="faq-card">
...
</div>
Я инициализирую свой templateRenderer следующим образом:
ServletContextTemplateResolver templateResolver = new ServletContextTemplateResolver();
templateResolver.setTemplateMode("LEGACYHTML5");
templateResolver.setCharacterEncoding("UTF-8");
templateResolver.setPrefix("/WEB-INF/");
templateResolver.setSuffix(".html");
templateResolver.setCacheable(false);
TemplateEngine templateEngine = new TemplateEngine();
templateEngine.setTemplateResolver(templateResolver);
return templateEngine;
Он работает нормально, но если я посмотрю на сгенерированный HTML, я вижу, что каждый раз, когда я включаю content-faq-card
, появляется дополнительный
<HTML><head></head><BODY>
<div class="faq-card">
...
</div>
</BODY></HTML>
Он отображается правильно, но HTML недействителен. Почему происходит такое накручивание? Есть ли способ избежать этого?