/rntsoft
/WEB-INF/rntsoft.tld
// create File:rntsoft.tld in the /WEB-INF/
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
1.0
1.2
rntsoft Simple Tags
tagLifecycle
com.rntsoft.TagLifecycle
empty
attr1
attr2
//compile the following code into WEB-INF\classes\com\rntsoft
package com.rntsoft;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;
/* This tag handler outputs information about when different methods
are called in the Tag interface.
*/
public class TagLifecycle extends TagSupport
{
// Constructor
public TagLifecycle()
{
System.out.println("TagLifecycle constructor called");
}
// Methods inherited from TagSupport
public void setPageContext(PageContext p)
{
super.setPageContext(p);
System.out.println("setPageContext() called (" + p + ")");
}
public void setParent(Tag t)
{
super.setParent(t);
System.out.println("setParent() called (" + t + ")");
}
public Tag getParent()
{
System.out.println("getParent() called");
return super.getParent();
}
public void release()
{
System.out.println("release() called");
}
// Code to implement the "attr1" attribute
private String attr1;
public String getAttr1()
{
return attr1;
}
public void setAttr1(String s)
{
System.out.println("setAttr1() called with value " + s);
attr1 = s;
}
// Code to implement the "attr2" attribute
private String attr2;
public String getAttr2()
{
return attr2;
}
public void setAttr2(String s)
{
System.out.println("setAttr2() called with value " + s);
attr2 = s;
}
public int doStartTag() throws JspException
{
System.out.println("doStartTag() called");
return SKIP_BODY;
}
public int doEndTag() throws JspException
{
System.out.println("doEndTag() called");
return super.doEndTag();
}
}
// start comcat and load the following jsp page in browser
<%@ taglib uri="/rntsoft" prefix="rntsoft" %>
The lifecycle of the Tag interface
Check the Tomcat console for the output