本文將一步一步介紹在Orion Application Server下定義自己的標簽,然后,實現該標簽的功能,最后用一個jsp例子測試。

二、建立標簽,實現該標簽的功能。

1.命名package為:com.acme " /> 精品视频一区二区三三区四区,单亲妈妈3韩国电影免费观看,99精品成人无码A片观看金桔

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JAVA/JSP學習系列之七(Orion下自定義Tag)

一、前言 (本文譯自Orion官方站點)

   本文將一步一步介紹在Orion Application Server下定義自己的標簽,然后,實現該標簽的功能,最后用一個jsp例子測試。

二、建立標簽,實現該標簽的功能。

1.命名package為:com.acme.mytags(為了和原文相同,我不做改動)

package com.acme.mytags;

2.import相關class

import Javax.servlet.jsp.*;

import Javax.servlet.jsp.tagext.*;

3.實現Javax.servlet.jsp.tagext.Tag接口:

public class HelloWorld implements Tag

{

4.定義局部變量

private PageContext pageContext;

private Tag parent;

5.調用標簽開始的實現方法

public int doStartTag() throws Javax.servlet.jsp.JspException

{

return SKIP_BODY;

}

注意:這個方法返回 SKIP_BODY,就是標簽的body為空的時候,將返回這個值,否則將返回:EVAL_BODY_INCLUDE

6.調用標簽結束的實現方法

public int doEndTag() throws Javax.servlet.jsp.JspException

{

try

{

pageContext.getOut().write("Hello World!");

}

catch(Java.io.IOException e)

{

throw new JspException("IO Error: " + e.getMessage());

}

return EVAL_PAGE;

}

這樣將在jsp文件的自定義標簽結束地方輸出“Hello World!”

7.還不夠,我們還要寫下面的方法:

public void release() {}

對于本簡單的例子,上面的方法不需要任何實現。

8.JSP的容器要調用下面的方法:

public void setPageContext(final Javax.servlet.jsp.PageContext pageContext) {

this.pageContext=pageContext;

}

JSP容器通過上面的方法調用標簽,而且上面的方法用來設置標簽的PageContext.

9.JSP的容器還要調用下面的方法:

public void setParent(final Javax.servlet.jsp.tagext.Tag parent)

{

this.parent=parent;

}

JSP容器通過上面的方法設置標簽的parent-Tag,因為每個標簽的PageContext都要保留它的parent標簽。

10.最后,實現方法:

public Javax.servlet.jsp.tagext.Tag getParent()

{

return parent;

}

}

11. 編譯標簽。

三、描敘標簽

現在將要寫一個描敘文件,描敘該標簽。

1.建立一個taglib.tld文件,

2.taglib.tld是一個XML格式的文本文件,XML的頭如下:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://Java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">

3.描敘標簽庫

<taglib>

<tlibversion>1.0</tlibversion>

<jspversion>1.1</jspversion>

<shortname>mt</shortname> <uri>http://www.orionserver.com/tutorials/tagtut/lesson1/mytags.jar</uri>

<info>My first Tag library</info>

4.描敘標簽

<tag>

<name>helloWorld</name>

<tagclass>com.acme.mytags.HelloWorld</tagclass>

<bodycontent>empty</bodycontent>

<info>A Hello world Tag</info>

</tag>

5.結束

</taglib>

四、打包

名稱為:mytags.jar

其目錄結構為:

com/acme/mytags/HelloWorld.class

META-INF/taglib.tld

五、在jsp文件中使用自定義標簽

建立hello.jsp如下:

<%@ taglib uri="mytags.jar" prefix="mt" %>

<HTML>

<HEAD>

<TITLE>Hello World!</TITLE>

</HEAD> <BODY BGCOLOR="#FFFFFF">

<HR>

<mt:helloWorld/>

<HR>

</BODY>

</HTML>

六、測試運行

在orion目錄下,建立如下結構,其中,tag是自己建立的,前面的目錄是本來就有的。

E:/orion/default-web-app/tag

將jar文件和jsp文件全部放到這個目錄下。

然后,訪問:

http://localhost:[port]/tag/hello.jsp

將出現:


--------------------------------------------------------------------------------


Hello World! 


--------------------------------------------------------------------------------

七、恭喜,你已經成功了!

附:mytags.jar和hello.jsp 文件本站下載地址:

http://www.wodejia.NET/softdownload/Java/orion_tag01.zip

jsp技術JAVA/JSP學習系列之七(Orion下自定義Tag),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 医生含着我的奶边摸边做 | 王小军怎么了最新消息 | 午夜亚洲国产理论片二级港台二级 | 中国毛片网 | 亚洲伊人久久一次 | 欧美日韩第一区 | 老熟风间由美AV在线一区二区 | 九九这里有精品 | 97免费在线视频 | 亚洲精品偷拍影视在线观看 | 草b是什么感觉 | 亚洲AV无码国产精品色在线看 | 爽爽窝窝午夜精品一区二区 | 色偷偷成人网免费视频男人的天堂 | 偷偷鲁青春草原视频 | 中国午夜伦理片 | 欧美18精品久久久无码午夜福利 | 暖暖视频中国在线观看免费韩国 | 亚洲欧美国产综合在线一区 | 亚洲高清一区二区三区电影 | 九九免费精品视频 | 99视频精品国产在线视频 | 91九色精品国产免费 | 台湾佬休闲中性娱乐网 | 国拍自产精品福利区 | 宝贝好紧好爽再搔一点试視頻 | 欧美日韩中文字幕综合图区 | 蓝男色gay| 兔费看少妇性L交大片免费 偷偷要色偷偷 | 天天影视网网色色欲 | 日日干日日操日日射 | 久久偷拍vs国产在线播放 | 亚洲午夜久久久无码精品网红A片 | 亚洲 日韩 在线 国产 精品 | 亚洲视频免费 | 久久综合色一综合色88中文 | 中文字幕乱偷无码AV蜜桃 | 果冻传媒免费观看 | 在线看片成人免费视频 | 亚洲永久精品ww47app | 亚洲精品乱码久久久久久中文字幕 |