重写struts2的TEXT标签对象以实现自己想在标签上增加默认显示内容的功能
2010-10-29 11:13
309 查看
1.准备好STRUTS2的源码
2.struts2中两个与标签相关的package
org.apache.struts2.components : 标签对象所对就的JAVA数据处理对象
org.apache.struts2.views.jsp : 与前台页面标签对应的JAVA端标签对象
在自己项目中src下创建出上面两个package
3.将struts2源码中对应的Text和TextTag复制到自己项目中对应的package下
4.分别在Text和TextTag对象中增加一个成员变量String desc,并访照成员变量name的set方法实现desc的set方法
5.在Text对象的end(Writer,String)方法中的if(msg!=null)前增加语句:msg = (msg==null||msg.length()==0)?desc:msg;
6.修改struts2的tag定义文件,从struts2的JAR包中找到struts-tags.tld并修改name='text'的tag标签,在此标签下增加属性desc,如何设置访照属性var的设置,设置好后保存
7.以上步骤做好后,就可以在自己的项目中使用自己定义的功能了
如:
<s:text name="aa" desc="default" />
解释:首先从struts2的资源文件中查找出key为aa的value值,如果没有定义这KEY或这KEY的值为空,那这时就使用desc定义的默认值显示到页面,如果能正常找到key为aa的值,则正常返回其value值.
此desc属性就是在自己扩展出来的属性,在原来的text标签是没有这属性的.
总结:
关键文件:
Text(从资源文件找出数据)
TextTag(将找出的数据返回到前台页面)
struts-tags.tld(对页面使用标签的标准定义)
最后就是使用标签了...
2.struts2中两个与标签相关的package
org.apache.struts2.components : 标签对象所对就的JAVA数据处理对象
org.apache.struts2.views.jsp : 与前台页面标签对应的JAVA端标签对象
在自己项目中src下创建出上面两个package
3.将struts2源码中对应的Text和TextTag复制到自己项目中对应的package下
4.分别在Text和TextTag对象中增加一个成员变量String desc,并访照成员变量name的set方法实现desc的set方法
5.在Text对象的end(Writer,String)方法中的if(msg!=null)前增加语句:msg = (msg==null||msg.length()==0)?desc:msg;
6.修改struts2的tag定义文件,从struts2的JAR包中找到struts-tags.tld并修改name='text'的tag标签,在此标签下增加属性desc,如何设置访照属性var的设置,设置好后保存
7.以上步骤做好后,就可以在自己的项目中使用自己定义的功能了
如:
<s:text name="aa" desc="default" />
解释:首先从struts2的资源文件中查找出key为aa的value值,如果没有定义这KEY或这KEY的值为空,那这时就使用desc定义的默认值显示到页面,如果能正常找到key为aa的值,则正常返回其value值.
此desc属性就是在自己扩展出来的属性,在原来的text标签是没有这属性的.
总结:
关键文件:
Text(从资源文件找出数据)
TextTag(将找出的数据返回到前台页面)
struts-tags.tld(对页面使用标签的标准定义)
最后就是使用标签了...
相关文章推荐
- 【TextView】自己实现的TextView,只有显示文字功能。
- 文本框onfocus()清空默认显示内容调用函数实现
- 利用Struts2标签实现多列显示数据
- listview获取edittext中输入的数据,显示,并且实现可删除功能
- 一起写框架-Ioc内核容器的实现-基础功能-容器对象名默认首字母小写(八)
- DEVExpress XtraReport报表制作过程中绑定数据源的XRControl对象在值为0时不显示功能,通过代码自动实现
- Android中使用一个textview实现不同颜色以及内容分割的显示
- struts2 加载DTD文件 (自动显示标签推荐功能)
- Android 单个TextView 点击“显示全部”功能实现方法
- 20.购物车商品价格的总和(里面有一些功能没有实现,创建textview布局对象,然后for()遍历数据求和)
- 【js实例】js实现点击标题标签切换显示对应内容
- Ajax程序中,自己实现页面前进、后退、与标签功能(asp.net2.0)
- TextView 内容过多,显示不全时,实现带滚动条,上下滑动
- 利用Struts2和Hibernate实现页面分页显示的功能
- Ajax程序中,自己实现页面前进、后退、与标签功能(asp.net2.0)
- android 之 TextView内容不完全显示,省略号功能~~~
- struts扩展html:text标签,增加autocomplete属性,功能为去掉文本框历史记录
- jQuery实现鼠标移到某个对象时弹出显示层功能
- android edittext+listview进阶 实现搜索listview中的内容 定制自己的过滤器
- asp.net的多行文本框(TextBox)随内容增加而高度增加,并且不显示垂直滚动条的实现!