自定义struts2标签?

时间:2009-10-23 13:06:23

标签: jsp struts2

我想编写一个自定义的struts2标记,它有一个单独的动作类,可以从不同的jsp页面调用。

类似的东西:

<s:writetext type="aaa" parentid="xxx" parentname ="yyy" height ="50" width ="125" />

有可能吗?请帮助,我对此非常陌生并且谷歌搜索这没有帮助。

谢谢, 阿迪亚

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:3)

答案 2 :(得分:3)

这个老问题本周在审查一些现有代码时对我也很重要。除了tbruyelle's answer之外,这对我来说是最有用的参考:

http://bodez.wordpress.com/2009/03/13/customising-struts2-jsp-tags/

总结(1)

  1. 扩展现有代码(例如,org.apache.struts2.views.jsp.ui.TextFieldTag
  2. 扩展其行为(例如,org.apache.struts2.components.TextField
  3. 定义新主题和模板(例如,从/core/src/main/resources/template中的现有主题进行复制和编辑)
  4. 为自定义版本的taglib
  5. 生成新TLD
  6. 将其部署在Web应用程序中
  7. struts 2 API也可能有所帮助。

    不幸的是(并且令人惊讶地),关于如何执行此操作的文档很少,并且现有struts组件的javadoc“有点稀缺”且具有误导性。也许它不打算以这种方式使用?


    备注

    (1)我在原帖后几年编辑了这个答案,添加了这个摘要,将答案与SO指南对齐。不幸的是,很长一段时间没有使用类似的代码,我不能确定保留链接博客的精髓,所以如果它仍然有用,请参考链接。