【发布时间】:2013-09-20 13:26:12
【问题描述】:
有没有一种方法可以在 jsp 中检索当前调用定义的名称?
标签
<tiles:importAttribute>
仅适用于定义的属性
【问题讨论】:
-
您总是可以在定义中添加另一个属性并使用它。另请参阅struts.1045723.n5.nabble.com/…。
有没有一种方法可以在 jsp 中检索当前调用定义的名称?
标签
<tiles:importAttribute>
仅适用于定义的属性
【问题讨论】:
第 1 步: 在 tiles.xml 的所有定义中添加属性 myDefinitionName。
<definition name="baseLayout" template="/BaseLayout.jsp">
<put-attribute name="title" value="" type="string" />
<put-attribute name="header" value="/Header.jsp" />
<put-attribute name="menu" value="/Menu.jsp" />
<put-attribute name="body" value="" />
<put-attribute name="footer" value="/Footer.jsp" />
<put-attribute name="myDefinitionName" cascade="true" value="baseLayout" />
</definition>
<definition name="/welcome.tiles" extends="baseLayout">
<put-attribute name="title" value="Welcome" type="string" />
<put-attribute name="body" value="/welcome.jsp" />
<put-attribute name="myDefinitionName" cascade="true" value="welcome.tiles" />
</definition>
注意:使用正确的磁贴版本和tiles.xml dtd 以使用cascade="true"。
第 2 步:在welcome.jsp
<b>Definition Name :</b> <tiles:getAsString name="myDefinitionName"/>
输出:
定义名称:welcome.tiles
【讨论】: