org.thymeleaf.exceptions.TemplateInputException:解析片段时出错:无法解析模板或片段

时间:2017-02-11 18:18:13

标签: java spring-boot thymeleaf

我有一个奇怪的问题,当我使用replace或include时,我的某些html文件没有包含在内。什么会导致这个?

了header.html

 <header id="header" xmlns:th="http://www.thymeleaf.org">
       <div th:replace="/blocks/topbar :: topbar"></div>
 </header>

topbar.html

<div class="top-bar">
    <div class="container">
        <div class="row">
            <div class="col-sm-6 col-xs-4">
                <div class="top-number"><p><i class="fa fa-phone-square"></i>  +0123 456 70 90</p></div>
           </div>
         <div class="col-sm-6 col-xs-8">
            <div class="social">
                <ul class="social-share">
                    <li><a href="#"><i class="fa fa-facebook"></i></a></li>
                </ul>
            </div>
        </div>
      </div>
    </div><!--/.container-->
</div><!--/.top-bar-->

错误:

 org.thymeleaf.exceptions.TemplateInputException: Error resolving fragment: "~{'/blocks/topbar' :: topbar}": template or fragment could not be resolved (template: "blocks/header" - line 3, col 10)

2 个答案:

答案 0 :(得分:4)

th:fragment="topbar"中没有topbar.html。 额外的<div>可以解决您的问题。

&#13;
&#13;
<div th:fragment="topbar">
  <!--fragment div start-->
  <div class="top-bar">
    <div class="container">
      <div class="row">
        <div class="col-sm-6 col-xs-4">
          <div class="top-number">
            <p><i class="fa fa-phone-square"></i> +0123 456 70 90</p>
          </div>
        </div>
        <div class="col-sm-6 col-xs-8">
          <div class="social">
            <ul class="social-share">
              <li><a href="#"><i class="fa fa-facebook"></i></a>
              </li>
            </ul>
          </div>
        </div>
      </div>
    </div>
    <!--/.container-->
  </div>
  <!--/.top-bar-->
</div>
<!--fragment div end-->
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你并不总是需要一个片段,你可以使用&#34; .top-bar&#34;而不是&#34; topbar&#34;:

<div th:replace="/blocks/topbar :: .top-bar"></div>

班级选择器是完全有效的,你在百里香中有更多的选择器可能性,见这里:http://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#appendix-c-markup-selector-syntax