• ServletException类

定义

public class ServletException extends Exception

当 Servlet 遇到问题时抛出的一个异常。

构造函数

public ServletException();

public ServletException(String message);

public ServletException(String message, Throwable cause);

public ServletException(Throwable cause);

构造一个新的 ServletException,如果这个构造函数包括一个 Throwable 参数,这个Throwable 对象将被作为可能抛出这个异常的原因。

方法

1、getRootCause

public Throwable getRootCause();

如果配置了抛出这个异常的原因,这个方法将返回这个原因,否则返回一个空值。

  • UnavailableException类

定义

public class UnavailableException extends ServletException

不论一个 Servlet 是永久地还是临时地无效,都会抛出这个异常。Servlet 会记录这个异常以及 Servlet 引擎所要采取的相应措施。临时的无效是指 Servlet 在某一时间由于一个临时的问题而不能处理请求。例如,在另一个不同的应用层的服务(可能是数据库)无法使用。这个问题可能会自行纠正或者需要采取其他的纠正措施。永久的无效是指除非管理员采取措施,这个 Servlet 将不能处理客户端的请求。例如,这个 Servlet 配置信息丢失或 Servlet 的状态被破坏。Servlet 引擎可以安全地处理包括永久无效在内的这两种异常,但是对临时无效的正常处理可以使得
Servlet 引擎更健壮。特别的,这时对 Servlet 的请求只是 被阻止(或者是被延期)一段时间,这显然要比在 service 自己重新启动前完全拒绝请求更为科学。

构造函数

public UnavailableException(Servlet servlet, String message);

public UnavailableException(int seconds, Servlet servlet,String message);

构造一个包含指定的描述信息的新的异常。如果这个构造函数有一个关于秒数的参数,这将给出 Servlet 发生临时无效后,能够重新处理请求的估计时间。如果不包含这个参数,这意味着这个 Servlet 永久无效。



方法

1、getServlet

public Servlet getServlet();

返回报告无效的 Servlet。这被 Servlet 引擎用来识别受到影响的 Servlet。

2、getUnavailableSeconds

public int getUnavailableSeconds();

返回 Servlet 预期的无效时间,如果这个 Servlet 是永久无效,返回-1。

3、isPermanent

public boolean isPermanent();

如果这个 Servlet 永久无效,返回布尔值 true,指示必须采取一些管理行动以使得这个Servlet 可用。

package javax.servlet;

public class UnavailableException extends ServletException
{
private Servlet servlet;
private boolean permanent;
private int seconds; /** @deprecated */
public UnavailableException(Servlet servlet, String msg)
{
super(msg);
this.servlet = servlet;
this.permanent = true;
} /** @deprecated */
public UnavailableException(int seconds, Servlet servlet, String msg)
{
super(msg);
this.servlet = servlet;
if (seconds <= 0)
this.seconds = -1;
else
this.seconds = seconds;
this.permanent = false;
} public UnavailableException(String msg)
{
super(msg); this.permanent = true;
} public UnavailableException(String msg, int seconds)
{
super(msg); if (seconds <= 0)
this.seconds = -1;
else {
this.seconds = seconds;
}
this.permanent = false;
} public boolean isPermanent()
{
return this.permanent;
} /** @deprecated */
public Servlet getServlet()
{
return this.servlet;
} public int getUnavailableSeconds()
{
return this.permanent ? -1 : this.seconds;
}
}

Servlet--ServletException类,UnavailableException类的更多相关文章

  1. Servlet主要相关类核心类 容器调用的过程浅析 servlet解读 怎么调用 Servlet是什么 工作机制

      WEB简介   Web项目 是 B/S结构 浏览器/服务器模式的 浏览器发起请求,服务器作出响应   请求的发起和响应使用HTTP协议进行通讯 所谓协议也就是一种固定格式   而Socket是应用 ...

  2. Servlet技术——常用的类和接口

    Servlet是运行在服务器端的Java应用程序,由Servlet容器对其进行管理. 当用户对容器发送HTTP请求时,容器将通知相应的Servlet对象进行处理,完成用户和程序之间的交互. 在Serv ...

  3. 关于servlet与jsp&java类传值问题

    为了实现单击左侧导航栏,动态改变右侧(一个jsp文件)的内容,需要改变变量var的值,进而实现改变default部分内容的目的(自己想的方法,因为实在是layman.应该有简便快捷的方法,可我不知道. ...

  4. Java 编程的动态性 第1 部分: 类和类装入--转载

    原文地址:http://www.ibm.com/developerworks/cn/java/j-dyn0429/ 本文是这个新系列文章的第一篇,该系列文章将讨论我称之为 Java 编程的动态性的一系 ...

  5. 初识UML类图--类之间关系

    前言 最近有打算学习一下设计模式,所以就去看了园子里面左潇龙大哥的设计模式文章,看完之后只有一个感觉,我啥时候也能写出来这么牛逼的文章啊,但是我这语文老师死的早的人还是算了,但是设计模式还是要学的,这 ...

  6. [.net 面向对象编程基础] (9) 类和类的实例

    [.net 面向对象编程基础] (9) 类和类的实例 类 ,顾名思义就是分类.类别的意思.我们要面向对象编程,就需要对不同的事物进行分类.类可以说是.net面向对象的核心. 类:就是具有相同的属性和功 ...

  7. java异常处理:建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),

    建立exception包,建立Bank类,类中有变量double  balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount ...

  8. javax.servlet.ServletException cannot be resolved to a type错误解决方法

    在页面中使用全局路径时${pageContext.request.contextPath}出现javax.servlet.ServletException cannot be resolved to ...

  9. Spring mvc-异常javax.servlet.ServletException: Could not resolve view with name 'xxx' in servlet with name 'spring'

    最近使用spring mvc开发项目,遇到一个问题: javax.servlet.ServletException: Could not resolve view with name 'ok' in ...

随机推荐

  1. linux 常见操作指令

    1.ssh root@ip ssh 登录 2.ll ls 列出当文件夹下 所以文件 3. cd ./xx 进入 xx 文件夹 4. vim vi xxx 进入 xx文件的 编辑模式. i 开始编辑 e ...

  2. 教你用.Net来玩微信跳一跳

    目前开发的所有代码都已经上传到了GitHub.欢迎大家来Star https://github.com/GiantLiu/AutoJump 目前程序分为“全自动版本”和“半自动版本” 全自动版本 We ...

  3. 使用Python实现的杨辉三角

    def triangel(): print ' '*(20*3)+str(1) #定义起始两行 print ' '*(19*3)+str(1)+' '*5+str(1) for i in range( ...

  4. 2、ABPZero系列教程之拼多多卖家工具 更改数据库为Mysql

    因为要部署项目到云服务器,不想在服务器上装SqlServer,所以需要把项目改为Mysql. 项目初始化 1.下载项目压缩包,前面文章已经说到,可以加群到群文件里下载.解压缩下载的项目源码,使用VS2 ...

  5. [转]Python的3种格式化字符串方法

    本文转自: 夏日微风Python笔记 传统C语言式 命名参数 位置参数 1. 传统C语言式 和c语言里面的 sprintf 类似,参数格式也一样 title = "world" y ...

  6. mybatis动态sql排序无效

    order by 字段,在用动态sql时会出现问题,排序无效,而且在日志里查询不到,不能发现这个错误. 通常,咱们的动态sql一般都会用#代替$,因为#可以防止sql注入问题. 但是在order by ...

  7. 变量、交互&注释、数字&字符串&布尔、格式化输出

    变量 变量定义规范: 声明变量: name = "Neo Zheng"    # name为变量名(标识符),"Neo Zheng"是变量值. 变量定义规则: ...

  8. bzoj:4105: [Thu Summer Camp 2015]平方运算

    Description   Input 第一行有三个整数N,M,p,分别代表序列的长度.平方操作与询问操作的总次数以及在平方操作中所要模的数.   接下来一行N个数代表一开始的序列{X1,X2,... ...

  9. hdu_1370Biorhythms(互素的中国剩余定理)

    Biorhythms Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  10. Django REST framework 中 3 种类视图的对比

    相较于使用基于方法(function based)的视图,我们更加倾向使用基于类(class based)的视图.接下来,你将看到这是一个强大的模式,是我们能够重用公共的功能,并且,帮我们减少重复的造 ...