自定义标签TLD文件中,rtexprvalue子标签的意思

时间:2023-03-09 05:14:21
自定义标签TLD文件中,rtexprvalue子标签的意思

rtexprvalue的全称是 Run-time Expression Value, 它用于表示是否能够利用JSP表达式。

举例子:

1、定义一个TLD文件:

<tag>
<name>selectDetail</name>
<tag-class>com.nms.taglib.SelectDetail_Tag</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>id</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>selectVal</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>collection</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>

2、JSP文件

<%
User user = new User();
user.setId(1);
request.setAttribute("user",user);
%>
<html:selectDetail id="" collection="<%="SEX" %>" selectVal="${user.id}">
</html:selectDetail>

使用脚本和EL表达式来获取动态的值

如果你将rtexprvalue设置为flase,那么上面的使用会直接报错,必须这样用:

<html:selectDetail id="" collection="SEX" selectVal="男"></html:selectDetail>  

其实全设置为rtexprvalue全部设置为true就可以了,这样使用方便。