自定义标签TLD文件中,rtexprvalue属性到底什么意思

java 01-21 阅读:60 评论:0

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

 

上网看了一下,有所收获,总结来说最简单的就是在使用标签时能不能使用表达式来动态指定数据。true是可以,false是不可以。

 

做个简单例子:

定义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>

页面可以这样设置需要的值:

<%
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>

我看了一下别人自定义标签,其实吧你全设置为true就可以了,方便使用也省事。

版权声明

本文仅代表作者观点,不代表itac3立场。
本文系作者授权itac3发表,未经许可,不得转载。

分享:

扫一扫在手机阅读、分享本文