posts - 51, comments - 17, trackbacks - 0, articles - 9
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          第一個自定義標簽的實現(xiàn)

          Posted on 2007-06-26 20:04 chenweicai 閱讀(295) 評論(0)  編輯  收藏

          步一:定義標簽

          步二:創(chuàng)建標簽庫描述器TLD diagnostics.tld, 將它放在WEB-INF目錄下的tlds文件夾下,diagnostics.tld如下:

          <?xml version="1.0"?>
          <taglib>
           <tlibversion>1.0</tlibversion>
           <jspversion>1.1</jspversion>
           <shortname>diag</shortname>
           <tag>
             <name>getWebServer</name>
             <tagclass>servlet.GetWebServerTag</tagclass>
             <bodycontent>empty</bodycontent>
           </tag>
          </taglib>

          步三:編寫標簽處理器 GetServerTag.java

          package servlet;

          import java.io.IOException;
          import java.net.HttpURLConnection;
          import java.net.URL;
          import java.net.URLConnection;

          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.jsp.JspException;
          import javax.servlet.jsp.JspWriter;
          import javax.servlet.jsp.tagext.TagSupport;

          public class GetWebServerTag extends TagSupport {

           @Override
           public int doStartTag() throws JspException {
            try{
             // get the request object from the page context
             HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
             
             // Request information form the web server
             URL url = new URL("http", request.getServerName(), request.getServerPort(), "/");
             URLConnection con = url.openConnection();
             ((HttpURLConnection)con).setRequestMethod("OPTIONS");
             String webserver = con.getHeaderField("server");
             
             // write it to the output stream
             JspWriter out = pageContext.getOut();
             out.print(webserver);
            }catch (IOException e)
            {
             throw new JspException(e.getMessage());
            }
            
            return SKIP_BODY;
           }
           
          }


          步四: 編寫WEB.xml文件

          加入:
          <jsp-config>
          <taglib>
          <taglib-uri>diagnostics</taglib-uri>
          <taglib-location>/WEB-INF/tlds/diagnostics.tld</taglib-location>
          </taglib>
          </jsp-config>

          步五:編寫jsp頁面,將標簽并入該JSP頁面

          <%@ taglib prefix="diag" uri="diagnostics"%>
             
          <html>
          <head>
          <title>Basci Example of a Custom Tag</title>
          </head>
          <body>
          <H3>Basci Example of a Custom Tag</H3>
           The web server is <diag:getWebServer/>
          </body>
          </html>


          OK  , so much so this ,


          wish you success

          <注: 注意紅色的地方要一致哦>


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 遵化市| 剑阁县| 巴马| 翼城县| 蒙自县| 白城市| 顺昌县| 兰西县| 隆回县| 民县| 大田县| 新巴尔虎左旗| 临武县| 阳山县| 吉安市| 兰考县| 渭源县| 玉林市| 昌图县| 罗甸县| 清流县| 达州市| 长治县| 余江县| 资阳市| 麻栗坡县| 句容市| 上饶市| 东兰县| 南丹县| 广南县| 宕昌县| 新津县| 平乐县| 南宁市| 平远县| 晋江市| 含山县| 饶阳县| 得荣县| 汝州市|