Setup Environment for Development Custom Tag : Introduction « JSTL « Java Tutorial






MyTag.java

package taglib;

import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;

import java.io.IOException;

public class MyTag extends TagSupport 
{
    public int doStartTag() throws JspException 
    {
        return EVAL_BODY_INCLUDE;
    }
    
    public int doAfterBody() throws JspException 
    {
            System.out.println("Hello!");
            return SKIP_BODY;
    }
}

MyTag.tld

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib
        PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
  "http://java.sun.com/dtd/web-jsptaglibrary_1_2.tld">

<taglib>

  <tlib-version>1.0</tlib-version>
  <jsp-version>1.2</jsp-version>
  <short-name>taglib1</short-name>
  <uri>http://java2s.com/taglibs</uri>
  <description>
  A simple tag library 
  </description>

  <!-- log tag -->
  <tag>
    <name>log</name>
    <tag-class>taglib.MyTag</tag-class>
    <body-content>TAGDEPENDENT</body-content>
    <description>
  Log a message.
    </description>
  </tag>
  
</taglib>

web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
  <description>
  Example web application illustrating the use of tags in the
  "request" custom tag library, from the JAKARTA-TAGLIBS project.
  </description>
  <taglib>
    <taglib-uri>http://java2s.com/taglibs</taglib-uri>
    <taglib-location>/WEB-INF/MyTag.tld</taglib-location>
  </taglib>

  <security-role>
    <role-name>admin</role-name>
  </security-role>
</web-app>

JSTL code

<%@ taglib uri="http://java2s.com/taglibs" prefix="l"%>
<HTML>
    <HEAD>
        <TITLE>Creating a Simple Custom Tag</TITLE>
    </HEAD>

    <BODY>
        <H1>Creating a Simple Custom Tag</H1>
        <l:log>
            I'm sending some text to the server console!
        </l:log>
    </BODY>
</HTML>
  Download:  SetupEnvironmentForDevelopmentCustomTag.zip( 135 k)








24.1.Introduction
24.1.1.Setup Environment for JSTL
24.1.2.Setup Environment for Development Custom Tag
24.1.3.JSTL JSP XML Format Page
24.1.4.JSTL in XML Format