Mega Code Archive

 
Categories / Java Tutorial / JSP
 

Custom Tag Support

HelloWorld.java package beans; import javax.servlet.http.*; import javax.servlet.jsp.*; import javax.servlet.jsp.tagext.*; import java.util.*; public class HelloWorld extends TagSupport {     public int doStartTag() throws JspException     {         try         {             JspWriter out = pageContext.getOut();             HttpServletResponse response = (HttpServletResponse)pageContext.getResponse();             out.write("Hello world!");         }         catch(Exception e)         {                throw new JspException(e.getMessage());         }         return EVAL_PAGE;     } } simple.tld <!DOCTYPE taglib   PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"    "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">     <!-- a tab library descriptor --> <taglib xmlns="http://java.sun.com/JSP/TagLibraryDescriptor">   <tlib-version>1.0</tlib-version>   <jsp-version>1.2</jsp-version>   <short-name>Simple Tags</short-name>   <tag>     <name>HelloWorld</name>     <tag-class>beans.HelloWorld</tag-class>     <body-content>empty</body-content>   </tag> </taglib> web.xml <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app>   <taglib>       <taglib-uri>          http://www.rntsoft.com/custom       </taglib-uri>       <taglib-location>          /WEB-INF/tags/simple.tld       </taglib-location>   </taglib>   <context-param>     <param-name>javax.servlet.jsp.jstl.fmt.timeZone</param-name>     <param-value>US/Central</param-value>   </context-param>   <context-param>     <param-name>database-driver</param-name>     <param-value>org.gjt.mm.mysql.Driver</param-value>   </context-param>   <context-param>     <param-name>database-url</param-name>     <param-value>     jdbc:mysql://localhost/forum?user=forumuser</param-value>   </context-param>   <taglib>     <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>     <taglib-location>/WEB-INF/fmt.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri>     <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>     <taglib-location>/WEB-INF/c.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/core-rt</taglib-uri>     <taglib-location>/WEB-INF/c-rt.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>     <taglib-location>/WEB-INF/sql.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/sql-rt</taglib-uri>     <taglib-location>/WEB-INF/sql-rt.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/x</taglib-uri>     <taglib-location>/WEB-INF/x.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>http://java.sun.com/jstl/x-rt</taglib-uri>     <taglib-location>/WEB-INF/x-rt.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>     http://java.jeffheaton.com/taglib/jstl/forum</taglib-uri>     <taglib-location>/WEB-INF/forum.tld</taglib-location>   </taglib>   <taglib>     <taglib-uri>/tlt</taglib-uri>     <taglib-location>/WEB-INF/taglib.tld</taglib-location>   </taglib> </web-app> jsp code with custom tag <%@ taglib uri='http://www.rntsoft.com/custom' prefix='hw' %> <html>   <body>     <hw:HelloWorld />   </body> </html>