Jsp 如何插入嵌套平铺

Jsp 如何插入嵌套平铺,jsp,tiles,Jsp,Tiles,你好: 我知道如何在jsp页面中插入属性和定义,但我不能插入嵌套的平铺 这是exmaple: <definition name="/commonPage" template="/jsp/common/template.jsp"> <put-attribute name="header" value="/jsp/common/defaultHeader.jsp" /> <put-attribute name="menu" val

你好: 我知道如何在jsp页面中插入属性和定义,但我不能插入嵌套的平铺

这是exmaple:

    <definition name="/commonPage" template="/jsp/common/template.jsp">
        <put-attribute name="header" value="/jsp/common/defaultHeader.jsp" />
        <put-attribute name="menu" value="/jsp/common/defaultMenu.jsp" />
        <put-attribute name="footer" value="/jsp/common/defaultFooter.jsp" />
    </definition>


    <definition name="/all" extends="/commonPage">
        <put-attribute name="body" value="/jsp/all_body.jsp" />
        <put-list-attribute name="scriptList">
            <add-attribute value="/res/script/all.js" />
        </put-list-attribute>
    </definition>

    <definition name="/time" extends="/commonPage">
        <put-attribute name="timebar" value="/jsp/common/timebar.jsp" />
        <put-attribute name="body" value="/jsp/time_body.jsp" />
        <put-list-attribute name="scriptList"></put-list-attribute>
    </definition>

</tiles-definitions>


在tempalte.jsp中:

....
<tiles:insertAttribute name="meun">
...
<tiles:insertAttribute name="footer">
。。。。
...
现在,在time_body.jsp中,我想插入另一个jsp——timebar.jsp

因此,我在“/time”的定义中定义了该属性,但它不起作用

这是time_body.jsp中的代码:

<div class="div_fullwidth">
    <tiles:insertAttribute name="timebar" />
</div>


有什么想法吗?

当您尝试这样做时,是否收到任何错误消息

编辑: 这是我的tiles配置-我使用的是spring:

基本布局-保留总体布局结构,正文标记中没有页面特定内容:

<tiles-definitions>

<definition name="default" template="/WEB-INF/layouts/default.jspx">
    <put-attribute name="leftmenu" value="/WEB-INF/layouts/partial/leftmenu.jspx" />
    <put-attribute name="footer" value="/WEB-INF/layouts/partial/footer.jspx" />
    <put-attribute name="subheader" value="/WEB-INF/layouts/partial/subheader.jspx" />
    <put-attribute name="seoheader" value="/WEB-INF/layouts/partial/seoheader.jspx" />
</definition>
    </tiles-definitions>

页面特定视图:

<tiles-definitions>
<definition extends="default" name="advice/list">
    <put-attribute name="body" value="/WEB-INF/views/advice/list.jspx"/>
</definition>
</tiles-definitions>

因此,在特定于页面的视图“建议/列表”中,我想添加一个新的部分,我将这样做:

<put-attribute name="timebar" value="/WEB-INF/layouts/partial/timebar.jspx" />

然后我将简单地调用advice/list模板中的属性

  • 能否检查您在WEB-INF/WEB.xml文件中是否正确设置了平铺定义
  • 由于找不到,您可以尝试更改模板属性路径定义吗
  • 顺便说一句:我在pom.xml中使用了这种依赖关系

    <dependency>
       <groupId>org.apache.tiles</groupId>
       <artifactId>com.springsource.org.apache.tiles</artifactId>
       <version>2.1.3</version>
    </dependency>
    
    
    org.apache.tiles
    com.springsource.org.apache.tiles
    2.1.3
    
    似乎找不到时间条。顺便说一句,我使用struts tiles插件。