快速业务通道

Java Web前台异常处理 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16

Java Web前台异常处理

时间:2011-06-19 51cto博客 leizhimin

在做Java Web程序时候,如果出错了,常常会在页面上打印出错误的堆栈内 存信息,在开发阶段对调试程序很有帮助,但是在运营环境下,这样的处理很不 友好,非开发人员看了都会傻眼。

这里给出一个简单的处理方式,使用错误页面来处理。

一、创建两个常见的HTML错误信息页面:

404.html

<body>    所访问的资源不存在:对不起,所请求的资源不存在 ! <br> </body>

500.html

<body>          服务器内部错误:对不起,服务器忙! <br>      </body>

二、配置web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4"    xmlns="http://java.sun.com/xml/ns/j2ee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">      <servlet>          <description>This is the description of my J2EE  component</description>          <display-name>This is the display name of my J2EE  component</display-name>          <servlet-name>ErrServlet</servlet-name>          <servlet-class>lavasoft.errtest.ErrServlet</servlet- class>      </servlet>      <servlet-mapping>          <servlet-name>ErrServlet</servlet-name>          <url-pattern>/servlet/ErrServlet</url-pattern>      </servlet-mapping>      <welcome-file-list>          <welcome-file>index.jsp</welcome-file>      </welcome-file-list>      <error-page>        <error-code>404</error-code>        <location>/404.html</location>      </error-page>      <error-page>        <error-code>500</error-code>        <location>/500.html</location>      </error-page> </web-app>

三、创建一个测试的Servlet,用来抛500错误的用的,呵呵。

package lavasoft.errtest; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ErrServlet extends HttpServlet {    public void doGet(HttpServletRequest request,  HttpServletResponse response)        throws ServletException, IOException {      response.setContentType("text/html");      throw new RuntimeException("------");    } }

四、测试

1、当访问不存在的资源时候,服务器会返回404错误状态,这样会自动转向 404对应的错误页面404.html,将其发送给客户端。

2、当服务器处理错误时候,会返回500错误状态码,这样自动转向500对应的 错误页面500.html,将其发送给客户端。

这样,不费多大劲,就把异常的不友好问题解决了!

当然,这仅仅是最简单的最懒惰的一种处理方式,还有一种方式值得推荐: 那就是在有好提示的页面不直接显示错误堆栈信息,只有当请求查看错误详细信 息时候才点击才显示出来,这个效果是通过js实现的。

本文配套源码

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号