在Apache Tiles模板中包含JSTL taglib

时间:2013-11-01 18:45:46

标签: java spring jsp tiles

我在我的小型Spring MVC项目中使用Apache Tiles,我使用JSTL标签在我的应用程序视图中显示数据。但每当我加载任何页面(视图)时,我都看不到任何显示的数据,而且我没有在页面顶部看到包含标记行,所以有人可以检查下面的配置和代码文件并告诉我我的内容我不见了?注意:我没有收到任何错误......根本没有显示任何内容,好像永远不会包含JSTL标记。

  1. Tiles.xml
  2. <tiles-definitions>
    
    <definition name="mainLayout" template="/WEB-INF/views/layout.jsp">
    <put-attribute name="title" value="Test Company" />
    <put-attribute name="header" value="/WEB-INF/views/header.jsp" />
    <put-attribute name="navigation" value="" />
    <put-attribute name="body" value="" />
    <put-attribute name="footer" value="/WEB-INF/views/footer.jsp" />
    </definition>
    
    <definition name="mainPage" extends="mainLayout"">
    <put-attribute name="title" value="Home" /> 
    <put-attribute name="header" value="" />
    <put-attribute name="navigation" value="" />
    <put-attribute name="body" value="/WEB-INF/views/home.jsp" />
    <put-attribute name="footer" value="" />
    </definition>
    
    </tiles-definitions>
    
    1. Layout.jsp
    2. &lt;%@ taglib uri =“http://tiles.apache.org/tags-tiles”prefix =“tiles”%&gt; &lt;%@ taglib uri =“http://java.sun.com/jsp/jstl/core”prefix =“c”%&gt; &lt;%@ taglib prefix =“sec”uri =“http://www.springframework.org/security/tags”%&gt; &lt;%@ page session =“false”%&gt; &lt;%@ page language =“java”contentType =“text / html; charset = ISO-8859-1”pageEncoding =“ISO-8859-1”%&gt;                                 /resources/css/style.css">      /resources/jq/jquery-1.10.2.min.js">                   
                          

          <div id="sidebar">
              <tiles:insertAttribute name="navigation" />
          </div>
          <div class="clear"></div>
      </div>
      <tiles:insertAttribute name="footer" /> 
      

      1. 针对home.jsp

        <div id="main">
            <div class="section">
        
                      <c:forEach var="country" items="${countriesList}">
                <div class="table_row">                     
               <div class="cell important">${country.id}</div>
               <div class="cell">${country.countryName}</div>
                        </div>
                      </c:forEach>
        
            </div>
        </div>
        
      2. CountryController.java

        @RequestMapping(value = "admin/countries")
        public String listCountries(HttpServletRequest request,Locale locale, Model model){
          model.addAttribute("countriesList", icountryservice.getAllCountries());
          return "mainPage";
        }
        
      3. 有人可以告诉我这里缺少什么,以及如何让JSTL标签重新开始工作?

        感谢您的时间

        注意:我尝试粘贴layout.jsp的内容,但我不能将其粘贴在此处作为代码或任何内容...任何想法如何在此处粘贴HTML代码?

0 个答案:

没有答案