对 apache tile 属性进行逻辑处理
Do logic on apache tile attributes
在我的 apache tiles 配置文件中,我有一个这样的部分:
<definition name="admin/*/*" extends="adminLayout">
<put-attribute name="key" cascade="true" value="{1}" />
</definition>
然后,在我的 JSP 中,我想对 tile 属性做一些逻辑。
类似于:
<c:if test="${key == 'value'}">
// do something
</c:if>
其中键来自 tile 属性。
如何在表达式语言中访问此 tile 属性?
我试过了
<c:set value="<tiles:insertAttribute name='key'/>" var="theKey"></c:set>
和
<c:if test="${<tiles:insertAttribute name='key'/> == 'value'}">
并且两次原始图块 xml 都用作比较字符串 - 它不会被属性替换。
使用Tiles extras:
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:tiles="http://tiles.apache.org/tags-tiles"
xmlns:tilesx="http://tiles.apache.org/tags-tiles-extras"
version="2.0">
<tilesx:useAttribute id="keyJspVariable" name="key" classname="java.lang.String" />
<c:if test="${keyJspVariable== 'value'}">
// do something
</c:if>
文档示例:https://tiles.apache.org/framework/tutorial/advanced/list-attributes.html
在我的 apache tiles 配置文件中,我有一个这样的部分:
<definition name="admin/*/*" extends="adminLayout">
<put-attribute name="key" cascade="true" value="{1}" />
</definition>
然后,在我的 JSP 中,我想对 tile 属性做一些逻辑。 类似于:
<c:if test="${key == 'value'}">
// do something
</c:if>
其中键来自 tile 属性。
如何在表达式语言中访问此 tile 属性?
我试过了
<c:set value="<tiles:insertAttribute name='key'/>" var="theKey"></c:set>
和
<c:if test="${<tiles:insertAttribute name='key'/> == 'value'}">
并且两次原始图块 xml 都用作比较字符串 - 它不会被属性替换。
使用Tiles extras:
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:tiles="http://tiles.apache.org/tags-tiles"
xmlns:tilesx="http://tiles.apache.org/tags-tiles-extras"
version="2.0">
<tilesx:useAttribute id="keyJspVariable" name="key" classname="java.lang.String" />
<c:if test="${keyJspVariable== 'value'}">
// do something
</c:if>
文档示例:https://tiles.apache.org/framework/tutorial/advanced/list-attributes.html