自定义标签是用户定义的JSP语言元素。当JSP页面包含一个自定义标签时被转化为servlet,标签转化为对称为tag handler的对象的操作。接着当servlet执行时Web container调用那些操作。
自定义标签有着丰富的特点,它们可以:
1、 可以通过调用页面传递的属性进行自定义;
2、 可以访问对于JSP页面可能的所有对象;
3、 可以修改由调用页面产生的响应。
4、 可以相互间通信。你可以创建并初始化一个JavaBean组件,创建一个变量引用标签中的bean,接着在其它的标签中引用该bean.
5、 可以在一个标签中嵌套另一个,可以在JSP页面中进行复杂的交互。

解决方案 »

  1.   

    <%taglib uri="/test.tld" prefix="tt"%>
    <tt:simple />
    将指向同目录下的:test.tld
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Muzhu (ACCP) -->
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
    "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
    <taglib>
    <tlib-version>1.0</tlib-version>
    <jsp-version>2.0</jsp-version>
    <short-name>Test</short-name>
    <tag>
    <name>simple</name>
    <tag-class>test.SimpleTag</tag-class>
    <body-content>JSP</body-content>
    </tag>
    </taglib>将由下面的标签处理器来实现:
    package test;public SimpleTag extends TagSupport {
    public int doStartTag() throws JspException {
    try{
    pageContext.getOut().print(“hello.”);
    }catch(Exception e) {throw new JspTagException(“SimpleTag:”+e.getMessage());}
    return SKIP_BODY;
    }
    public int doEndTag() {
    return EVAL_PAGE;
    }
    }