首页 > 代码库 > 《javaweb学习笔记2-jsp错误页设置》

《javaweb学习笔记2-jsp错误页设置》

在网站中经常由于用户的不当操作造成异常,一般情况下我们可以将这些异常在一个网页中统一显示。这个时候就需要用到errorPage跟isErrorPage属性。

errorPage指令的作用就是在其中指定一个网页,当jsp程序出现未被捕获的异常时,就跳转到那个指定的页面,通常情况下跳转到的页面需要使用isErrorPage来指明处理其他页面的错误信息。

  完成错误页的操作,满足下列条件:

              1.指定错误出现时的跳转页(此处跳转页为anErrorPage.jsp),通过errorPage属性指定

                语法:<%@page errorPage="anErrorPage.jsp"%>

              2.错误处理页必须要有明确的标识,通过ErrorPage属性指定

                语法:<%@page isErrorPage="true"%>

 1 <%@page contentType="text/html" pageEncoding="gb2312" 2            errorPage="anErrorPage.jsp"%> 3   <html> 4        <body> 5                <% 6                     //其向anErrorPage抛出异常,让其处理 7                       int num=1/0;                  8                  %> 9       </body>            10  </html>

anErrorPage.jsp

 1  <%@page language="text/html" pageEncoding="gb2312"  2   isErrorPage="true"%> 3   <html> 4        <body> 5                <% 6                   //处理抛出的异常 7                    out.println("出现数学运算异常!");  8               %> 9       </body>10  </html>               

运行最后结果我就不显示了,很简单。这里提个醒,正常情况下是可以跳转的,但是有时会出现无法跳转的问题,其原因是:跳转后,有可能将anErrorPage认为一个出错页,所以不显示,处理方法:
    在anErrorPage中进行设置告诉用户其为正常页面
    <%response.setStatus(200)%>
跳转后发现页面内容发生改变,但不为anErrorPage.jsp页面

不改变地址栏的跳转称为服务器端跳转

  避免在每个页面设置errorPage,可以在web.xml中进行设置:

格式:  <error-page>
         <error-code>name</error-code>
       <location>path</location>

             </error-page>

配置完成后重新启动服务器

 

《javaweb学习笔记2-jsp错误页设置》