我有自定义标记e:MyTag
...
<%@ tag body-content = "tagdependent" %>
<%@ taglib prefix="e" tagdir="/WEB-INF/tags" %>
...
<jsp:doBody />
<e:MyMessageTag key="someKey" />
...
我将其用作<e:MyTag><e:MyOtherTag /></e:MyTag>
我的问题:JSP似乎将标记转换为小写 - 所以我在Body <e:myothertag />
中看到的不是应该来自<e:MyOtherTag />
的替换代码。
是否有一些属性要设置或类似的东西使标签区分大小写?或者body-content
的值是错误的吗?
<e:MyMessageTag />
被正确评估 - 它只是<jsp:doBody />
内的标签,而这些标签已经松动了。
感谢您的帮助。
答案 0 :(得分:0)
Oracle's The Java EE 5 Tutorial解释了这些属性:
您必须将不接受正文的标记的正文内容声明为空。对于具有正文的标签,有两种选择。包含自定义和标准标记以及HTML文本的正文内容被指定为无脚本。所有其他类型的正文内容(例如,传递给查询标记的SQL语句)都指定为tagdependent。如果未指定任何属性,则默认为无脚本。
因此,您必须将该属性声明为scriptless
,或者只删除该行,因为它是默认值。