Java Server Page - Пример тега с атрибутом

Пример использования тега с атрибутом на странице JSP включает java-класс AttribTag.java и страницу AttribTag.jsp. На странице JSP перед применением тега включена ссылка на библиотеку тегов /WEB-INF/tlds/template.tld. В дескрипторе TLD определен атрибут тега в виде параметра text.
Теги чтения атрибутов на JSP-странице AttribTag.jsp выделены бледно-серым цветом.


Листинг JSP-страницы AttribTag.jsp
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%@ page contentType="text/html;charset=windows-1251" %>
<html>
  <head>
   <%@ taglib uri="/WEB-INF/tlds/template.tld" prefix="template" %>
   <title>Пример тега с атрибутом</title>
  </head>
  <body>
   <h1><template:attribTag text="1. Страница JSP" /></h1>
   <h2><template:attribTag text="1.1. Библиотеки тегов" /></h2>
   <h3><template:attribTag text="Пример использования библиотеки тегов на странице JSP"/></h3>
  </body>
</html>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Листинг тега AttribTag.java
 
package tags.templates;
 
import java.io.IOException;
 
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import javax.servlet.jsp.JspWriter;
import javax.servlet.ServletResponse;
import javax.servlet.ServletRequest;
 
public class AttribTag extends TagSupport
{
  private String text;
  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  public String getText() {return text;}
  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  public void setText(String text)
  {
   this.text = text;
  }
  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  public int doStartTag() throws JspException
  {
   try
   {
    // Определение языка локализации
    ServletResponse response = pageContext.getResponse();
    response.setContentType("text/html;charset=windows-1251");
 
    JspWriter out = pageContext.getOut();
    out.print(text);
   } catch(IOException e)
   {
    System.out.println("Exception in AttribTag : " + e);
   }
   return SKIP_BODY;
  }
}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Код описания тега AttribTag.java в дескрипторе TLD template.tld
 
<tag>
  <name>attribTag</name>
  <tag-class>tags.templates.AttribTag</tag-class>
  <body-content>EMPTY</body-content>
  <description>Show attribute</description>
  <attribute>
   <name>text</name>
   <required>true</required>
   <type>java.lang.String</type>
  </attribute>
</tag>


Партнеры:


Rambler's Top100 Рейтинг@Mail.ru