`

404/500异常捕获

阅读更多
就在周五快下班的时候,看到测试组的MM们在做着最后的项目测试,一个的404/500高频率的出现,(因为我在加于那个项目组的时候项目做8899了,我也只是做了一下结尾的部分)说真的那项目做的真的不怎么样,很多很多的细节方面的东东都没有考虑到.boss都来敷衍了,唉!我这新来的,也就不了了之了.在那会我就想到了一个问题,有没有捕获301/404/500错误的办法呢!出错了也给一个友好人性化的错误提示吧!!!google一看,网上都一大把,因为元旦嘛!也只是那会在公司查了一下资料看了一下!藐似只需要简单的在web.xml中做简单的配置,也没怎么来实践.所以今下午就来试试牛刀.
1.只需要在web.xml中加上
<error-page>
		<!--自定义捕获404错误页面-->
		<error-code>404</error-code>
		<location>/common/404.jsp</location>
	</error-page>
	<error-page>
		<!--自定义捕获500错误页面-->
		<error-code>500</error-code>
		<location>/error.jsp</location>
	</error-page>

404.jsp页面可以自己来发挥你超强的想象力自己来设计.这是我的:

500.jsp页面

也上网看了一下,一般都是这样来写,这样写一般都可以来精确定位错误.我试了又试的.这里就直接上代码了:
<%@ page language="java" contentType="text/html; charset=GBK"
	isErrorPage="true" pageEncoding="GBK"%>
<%@ page import="java.io.*,java.util.*"%>
<%
	response.setStatus(HttpServletResponse.SC_OK);
%>
<html>
<body>
程序发生了错误,有可能该页面正在调试或者是设计上的缺陷.
<br />
你可以选择
<br />
<a href=<%=request.getContextPath() + "/forum/new.jsp"%>>反馈</a>
提醒我... 或者
<font color="red" size="50">自定义500错误页面!!! </font>
<br />
<a href="javascript:history.go(-1)">返回上一页</a>
<hr width=80%>
<h2><font color=#DB1260>JSP Error Page</font></h2>

<p>An exception was thrown: <b> 
<%=exception.getClass()%>:<%=exception.getMessage()%></b></p>
<%
	System.out.println("Header....");
	Enumeration<String> e = request.getHeaderNames();
	String key;
	while (e.hasMoreElements()) {
		key = e.nextElement();
		System.out.println(key + "=" + request.getHeader(key));
	}
	System.out.println("Attribute....");
	e = request.getAttributeNames();
	while (e.hasMoreElements()) {
		key = e.nextElement();
		System.out.println(key + "=" + request.getAttribute(key));
	}
	System.out.println("Parameter....");
	e = request.getParameterNames();
	while (e.hasMoreElements()) {
		key = e.nextElement();
		System.out.println(key + "=" + request.getParameter(key));
	}
%>
<%=request.getAttribute("javax.servlet.forward.request_uri")%><br>
<%=request.getAttribute("javax.servlet.forward.servlet_path")%>

<p>With the following stack trace:</p>
<pre>
<%
	exception.printStackTrace();
	ByteArrayOutputStream ostr = new ByteArrayOutputStream();
	exception.printStackTrace(new PrintStream(ostr));
	out.print(ostr);
%>
</pre>
<hr width=80%>
</body>
</html>



  • 大小: 57.4 KB
  • 大小: 48.8 KB
1
0
分享到:
评论

相关推荐

    dubbo捕获自定义异常_dubbo异常捕获_dubbo异常_自定义异常_捕捉异常_

    本文将深入探讨如何在 Dubbo 中捕获自定义异常,以及相关的最佳实践。 1. **自定义异常类** 在 Java 中,自定义异常通常继承自 `Exception` 或其子类。例如,你可以创建一个名为 `CustomServiceException` 的异常...

    android全局异常捕获 exception_global

    在Android开发中,全局异常捕获是一个至关重要的实践,它能确保应用在遇到未预期的错误时仍能保持稳定,并提供良好的用户体验。标题"android全局异常捕获 exception_global"和描述都指向了这个主题,表明我们将探讨...

    C# 捕获C/C++异常的例子

    在本文中,我们将深入探讨如何在C#环境中捕获源自C/C++代码的异常,这对于跨语言开发或者使用C++库的C#项目至关重要。 C# 提供了一套强大的异常处理机制,它基于`try-catch`块来捕获和处理运行时错误。然而,C++的...

    Android 全局异常捕获

    因此,全局异常捕获是一个必要的技术手段,用于捕获和处理那些可能引发程序异常退出的事件。下面将详细解释如何在Android中实现全局异常捕获,以及它的重要性。 首先,让我们理解什么是全局异常捕获。全局异常捕获...

    WPF程序全局异常捕获示例

    而全局异常捕获是实现这一目标的关键技术,它可以帮助开发者在程序运行时捕获并处理可能出现的异常,避免程序突然崩溃,提供友好的用户体验。本示例将详细讲解如何在WPF应用程序中实现对UI线程、Task任务以及非UI...

    易语言SEH异常捕获模块.e

    支持易语言程序代码自设SEH捕获异常

    android全局异常捕获

    为了解决这个问题,开发者通常会实现全局异常捕获机制,以便在应用程序出现异常时进行处理,避免程序突然终止,并提供反馈或修复措施。本文将深入探讨“Android全局异常捕获”的概念、实现方法以及其在实际开发中的...

    全局异常捕获&NLOG使用配置示例

    全局异常捕获是指在整个应用程序范围内设置一个统一的机制,以便在任何地方抛出的异常都能被适当地记录、处理或显示,防止程序因未处理的异常而崩溃。本示例主要关注WPF(Windows Presentation Foundation)应用中的...

    Visual C++源代码 23 如何使用主线程异常捕获错误

    Visual C++源代码 23 如何使用主线程异常捕获错误Visual C++源代码 23 如何使用主线程异常捕获错误Visual C++源代码 23 如何使用主线程异常捕获错误Visual C++源代码 23 如何使用主线程异常捕获错误Visual C++源代码...

    Release异常捕获

    "Release异常捕获"是指在程序的发布版本中,通过编程手段来检测、记录和处理运行时出现的错误或异常情况。这有助于开发者及时发现并修复问题,提高用户体验,避免因为未预见的错误导致应用程序崩溃。 首先,我们来...

    程序崩溃异常捕获

    在软件开发过程中,异常捕获是一项至关重要的技术,它能够帮助开发者及时发现并解决程序运行时出现的问题。当用户在使用应用时遇到错误导致程序崩溃,如果没有适当的异常处理机制,用户体验将大大降低,同时,开发者...

    如何设计多层嵌套异常捕获错误实例C#.net源代码编写

    本文将深入探讨如何使用多层嵌套异常捕获来实现这一目标,并通过具体的C#.NET源代码实例进行解释。 首先,了解异常的基本概念。在C#.NET中,异常是一种结构化的方式来处理运行时错误。当程序运行过程中发生错误或...

    WPF全局异常捕获Demo,防止程序运行过程中出现异常崩溃

    本示例"**WPF全局异常捕获Demo**"旨在提供一种策略,确保在程序运行过程中能够有效地捕获和处理异常,从而防止程序因错误而意外终止。 首先,我们要理解WPF应用程序的生命周期,以及在何处设置全局异常处理。WPF...

    smartsniff TCP/IP 数据包捕获软件

    SmartSniff是一款强大的TCP/IP数据包捕获工具,主要用于网络监控和分析。它允许用户查看网络通信中的数据流,深入理解网络流量模式,排查网络问题,以及进行安全审计。这款工具是开发人员、网络管理员和安全专家的...

    捕获全局异常UnException

    android在产品上线以后为了能够实时捕获异常,需要写一个异常捕获的类,这个类在你遇到异常的时候会执行uncaughtException这个方法,然后你就可以对异常进行一些操作。

    20.java多异常捕获.zip

    20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多异常捕获.zip20.java多...

    Android全局异常捕获及上传服务器

    全局异常捕获是指在整个应用程序运行过程中,无论在哪个线程、哪个模块抛出未被捕获的异常时,都能进行有效的处理,避免应用突然崩溃。这通常通过实现自定义的异常处理器来实现。本主题将深入探讨Android全局异常...

    c#全局异常捕获

    c#全局异常捕获 捕获全局异常,抛出异常显示,也可以自己制作个日志类 记录异常信息

    SpringBoot拦截器实现对404和500等错误的拦截

    在处理404和500错误时,我们可能在这里捕获异常并自定义错误页面。 为了处理404错误,我们需要确保SpringBoot能够正确地处理未找到的资源。默认情况下,SpringBoot将返回一个简单的404错误页面。如果你想自定义404...

    JAVA 自定义异常 全局捕获

    自己编写异常类型 ,自定义错误异常进行全局捕捉。实现项目全局的拦截定义输出。。。

Global site tag (gtag.js) - Google Analytics