Struts框架虽然有错误处理机制,但是Struts并不能处理所有出现的错误,因此在web.xml中配置错误页面处理,是对Struts错误处理机制的一个补充.具体配置如下代码所示:
<error-page>
<errpr-code>404</error-code>
<location>/err404.jsp</location>
</error-page>
IE5以后的浏览器对自定义错误页面的信息量有要求,信息量足够大才能支持显示,
否则将按其自身的错误处理机制显示错误处理页面。对此,解决的办法之一就是在
自定义的错误页面中增加注释或其他内容,以增加错误页面的信息量。
下面代码是自定义的错误页面err404.jsp:
<%@ page contentType="text/html;charset=GB2312" language="java"%>
<html>
<head>
<title>the simple example</title>
</head>
<body>
<!--增加一些注释,使得页面的信息量足够大,
这样自定义的错误页面才能起作用,否则浏览器
将显示自身的错误处理页面。这个办法在IE浏览器
起作用,在其他浏览器中没有做过测试,请读者根
据自己采用的浏览器来决定是否使用增加代码信息
的方法。-->
<h1>对不起,您访问的页面已不存在</h1><br>
<h1>请继续访问其他页面</h1>
</body>
</html>
另外web浏览器也可以捕获下列异常:RuntimeException、ServletException、IOException
一集这些异常的子类,因此也可以在web.xml中来配置对这些异常的处理。
此时,需要用<exception-type>来表示异常的类型,如下列代码:
<error-page>
<exception-type>javax.servlet.ServletException</exception-type>
<location>/errServletException.jsp</location>
</error-page>
ServletException是异常类型,错误处理页面是errServletException.jsp