JSP应用的自我理解之二:JSP的异常处理机制及具体实现

JSP中规定了异常处理机制,具体需要完成以下三个步骤:1、编写一个JSP错误页面;2、在JSP内指定发生异常时,回到哪个错误界面;3、配置web.xml

1、“错误页面”

使用page指令中的isErrorPage属性,具体格式如下:

<%@ page isErrorPage="true"%>
2、指定回到哪个“错误页面”

使用page指令中的errorPage,具体格式如下:

<%@ page errorPage="异常处理文件"%>
如果编写的errorPage.jsp为当前页面的异常处理文件,则代码如下:

<%@ page errorPage="errorPage.jsp"%>

3、进行web.xml文件配置(两种类型)

(1)异常类型的配置,如NullPointException、IOException等,具体代码如下:


java.lang.NullPointerException
/Nullpointer.jsp
(2)异常编码的配置


500
/500.jsp
常见编码方式有以下几种:

404,请求错误;401,访问被拒绝;403,文件被禁止访问;404,文件没找到;500,文件运行中发生未知错误(一般是你的代码问题,骚年)


然后,开始一个错误界面500的具体实现~~

1、首先,新建一个Dynamic WEB工程

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第1张图片

2、建立一个index.jsp页面,故意设置为数据溢出异常,你不做任何配置,系统会自动指定一个500的错误页面~~

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第2张图片

具体代码如下:

<%@ page language="java" contentType="text/html; charset=GBK"
    pageEncoding="UTF-8"%>
    





Insert title here


<%
	//这里故意设置一个异常
	String[] strlen ={"hello", "error", "huaian"};
	for (int i=0; i<10; i++){
		out.print(strlen[i] + "--test");
		i++;
	}
%>


3、设置自己的500界面

(1)配置web.xml文件,添加代码如下:


	
	500
	/500.jsp


	
	java.lang.Throwable
	/500.jsp
	

这里在后面会有一个问题,后面具体会说~~

(2)编写500的异常处理页面,命名为500.jsp,具体代码如下:

<%@ page language="java" contentType="text/html; charset=GBK"
    pageEncoding="UTF-8"%>
<%@ page isErrorPage="true"%>




500错误处理


	这是500的错误页面
	
异常信息为<%=exception.getClass().getName() %>

然后开始跑,但在web.xml文件中出现了如下问题~~

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第3张图片

后来百度之,发现是头文件配置少了那么段代码,这要看你的Tomcat的web.xml中是如何定义的,具体路径如下:

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第4张图片

将这段代码加入后,错误提示消失,然后开始跑index.jsp文件,结果是这么个界面~~

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第5张图片

没办法,直接用搜狗浏览器看看吧,可以的,先这样了~~

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第6张图片


【补】我的工程目录具体如下:

JSP应用的自我理解之二:JSP的异常处理机制及具体实现_第7张图片


你可能感兴趣的:(JAVA,EE的学习)