如何在tiles.xml文件中使用EL表达式

时间:2013-07-22 10:26:16

标签: el tiles2

我在tiles.xml文件中编写了以下代码

<definition name="template" template="/WEB-INF/jsp/mainTemplate.jsp">
        <put-attribute name="title" value="Default title"/>
        <put-attribute name="header" expression="${requestScope.header}" />
        <put-attribute name="leftMenu" value="/WEB-INF/jsp/leftside.jsp"/>
        <put-attribute name="body" value=""/>
        <put-attribute name="filters" value="/WEB-INF/jsp/filters.jsp"/>
        <put-attribute name="footer" expression="${requestScope.footer)"/>
    </definition> 

当我运行代码时,我收到以下错误

“属性”表达式“必须为元素类型”put-attribute“。

声明

我正在使用tile2.2.2

请帮助解决此问题

1 个答案:

答案 0 :(得分:1)

检查tiles.xml中的tiles DTD版本

Tiles 2.0 DTD不支持put-attribute中的表达式,而Tiles 3.0 DTD不支持。

将瓷砖dtd版本更改为瓷砖3.0,它将起作用。

参考:http://tiles.apache.org/framework/tiles-core/dtddoc/tiles-config_3_0.dtd.html http://tiles.apache.org/2.1/framework/tiles-core/dtddoc/tiles-config_2_0.dtd.html

谢谢, Selva P