Listing 1. HelloTag Tag Handler
package il.co.lerner;
import java.io.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
public class HelloTag extends TagSupport {
private String firstname = null;
// field, with a null default
// -----------------------------------------------
// Bean-style "set" method
public void setFirstname (String newFirstname) {
// Only set the firstname field if it's non-empty
if (! newFirstname.equals(""))
{
firstname = newFirstname;
}
}
// ------------------------------------------------
public int doEndTag() throws JspException {
// Insert some text inside of the JSP, or die
trying
try {
// If no name was defined, print a generic
message
if (firstname == null)
{
pageContext.getOut().println
("Hi there!");
}
else
{
pageContext.getOut().println
("Hello, " + firstname);
}
} catch (IOException e) {
throw new JspException(e.getMessage());
}
// Go ahead and evaluate the rest of the JSP
return EVAL_PAGE;
}
// ------------------------------------------------
public void release()
{
firstname = null;
super.release();
}
}