package com.jb.arklis.web.mytag;
import javax.servlet.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
import java.io.*;
/**
功能:书写一个自定义标签处理程序,用来演示web工程的书写
作者:Arklis zeng
时间:2008-5-16
地点:雅安Home
版本:ver 1.0.0
@jsp.tag name="happy" body-content="empty"
*/
public class HappyTag extends TagSupport{
//声明一个boolean变量,用来说明测试值
private boolean verbose = false;
private boolean fail = false;
/**
@jsp.attribute required="false"
*/
public void setVerbose(boolean verbose){
this.verbose = verbose;
}
/**
@jsp.attribute required="false"
*/
public void setFail(boolean fail){
this.fail = fail;
}
/*重写doStartTag()方法*/
public int toStartTag()throws JspException{
//呼叫测试方法
testServletVersion();
testFailureBehavior();
return SKIP_BODY;
}
/*测试servlet的版本*/
public void testServletVersion()throws JspException{
//取得servlet上下文
ServletContext context = pageContext.getServletContext();
//得到servlet的版本号
int major = context.getMajorVersion();
int minor = context.getMinorVersion();
if(major < 2 || (major == 2 && minor < 3)){
String text = "Servlet version (" + major + "."
+ minor + ") too old; 2.3+ required";
throw new JspException(text);
}
//日志版本
log("version = " + major + "." + minor);
}
/*测试解析错误*/
public void testFailureBehavior()throws JspException{
//如果有错误
if(fail){
//抛出错误信息
throw new JspException("Failure requested....");
}
}
private void log(String message)throws JspException{
if(verbose){
try{
pageContext.getOut().println(message);
}catch(IOException ioe){
throw new JspException(ioe);
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本应用中自定义标签处理程序的书写规范,注释特别详尽。<br>注意:初学Java人员请勿参阅。如果有问题,请mail联系:arklis@126.com<br>运行环境是Window XP Professional SP2.<br>使用Tomcat 6.0, JDK 1.6, Xdoclet 1.2.3, Ant 1.7完成的第一个JSP自定义标签处理程序的web工程演示应用 (2. web application demo目录)。
资源详情
资源评论
资源推荐
收起资源包目录
2. web application demo for JSP tag.rar (14个子文件)
2. web application demo
source
com
jb
arklis
web
test
Test.java 143B
servlet
HomePageServlet.java 1KB
mytag
HappyTag.java 2KB
DateFormatTag.java 1KB
web
WEB-INB
antweb.tld 1KB
web.xml 3KB
jsp
home.jsp 257B
output
com
jb
arklis
web
test
Test.class 367B
servlet
HomePageServlet.class 1KB
mytag
HappyTag.class 2KB
DateFormatTag.class 1KB
lib
firstweb.war 10KB
webproject.jar 4KB
build.xml 3KB
共 14 条
- 1
技术大黍-曾老师
- 粉丝: 109
- 资源: 108
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0