web.xml配置错误页面,及输出错误信息

1.需要在web.xml中配置相关信息

[html] view plain copy print?

  1. <!-- 默认的错误处理页面 -->
  2. <error-page>
  3. <error-code>403</error-code>
  4. <location>/403.html</location>
  5. </error-page>
  6. <error-page>
  7. <error-code>404</error-code>
  8. <location>/404.html</location>
  9. </error-page>
  10. <!-- 仅仅在调试的时候注视掉,在正式部署的时候不能注释 -->
  11. <!-- 这样配置也是可以的,表示发生500错误的时候,转到500.jsp页面处理。 -->
  12. <error-page>
  13. <error-code>500</error-code>
  14. <location>/500.html</location>
  15. </error-page>
  16. <!-- 这样的配置表示如果jsp页面或者servlet发生java.lang.Exception类型(当然包含子类)的异常就会转到500.jsp页面处理。 -->
  17. <error-page>
  18. <exception-type>java.lang.Exception</exception-type>
  19. <location>/500.jsp</location>
  20. </error-page>
  21. <error-page>
  22. <exception-type>java.lang.Throwable</exception-type>
  23. <location>/500.jsp</location>
  24. </error-page>
  25. <!--
  26. 当error-code和exception-type都配置时,exception-type配置的页面优先级高
  27. 及出现500错误,发生异常Exception时会跳转到500.jsp
  28. -->
<!-- 默认的错误处理页面 -->
	<error-page>
		<error-code>403</error-code>
		<location>/403.html</location>
	</error-page>
	<error-page>
		<error-code>404</error-code>
		<location>/404.html</location>
	</error-page>
	<!-- 仅仅在调试的时候注视掉,在正式部署的时候不能注释 -->
	<!-- 这样配置也是可以的,表示发生500错误的时候,转到500.jsp页面处理。 -->
	<error-page>
		<error-code>500</error-code>
		<location>/500.html</location>
	</error-page> 

	<!-- 这样的配置表示如果jsp页面或者servlet发生java.lang.Exception类型(当然包含子类)的异常就会转到500.jsp页面处理。 -->
	<error-page>
		<exception-type>java.lang.Exception</exception-type>
		<location>/500.jsp</location>
	</error-page> 

	<error-page>
		<exception-type>java.lang.Throwable</exception-type>
		<location>/500.jsp</location>
	</error-page>
	<!--
	当error-code和exception-type都配置时,exception-type配置的页面优先级高
	及出现500错误,发生异常Exception时会跳转到500.jsp
	 -->	

2.如果配置是html时,不用另做配置

如果配置是Jsp时,需要把isErrorPage设置为true,

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

3.获取异常信息及输出

[html] view plain copy print?

  1. <%@page import="java.io.PrintStream"%>
  2. <%@page import="java.io.ByteArrayOutputStream"%>
  3. <%@ include file="WEB-INF/views/includes/tags.jsp"%>
  4. <%@ page language="java" contentType="text/html; charset=UTF-8"
  5. pageEncoding="UTF-8" isErrorPage="true"%>
  6. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  7. <html>
  8. <head>
  9. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  10. <title>500 服务器内部错误</title>
  11. </head>
  12. <body>
  13. <div class="ui-alert-panel">
  14. <h1>服务器内部错误</h1>
  15. <p>处理您的请求时发生错误!请确认您通过正确途径操作。</p>
  16. </div>
  17. <div style="display:none;">
  18. <%  //此处输出异常信息
  19. exception.printStackTrace();
  20. ByteArrayOutputStream ostr = new ByteArrayOutputStream();
  21. exception.printStackTrace(new PrintStream(ostr));
  22. out.print(ostr);
  23. %>
  24. </div>
  25. </body>
  26. </html>
<%@page import="java.io.PrintStream"%>
<%@page import="java.io.ByteArrayOutputStream"%>
<%@ include file="WEB-INF/views/includes/tags.jsp"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" isErrorPage="true"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>500 服务器内部错误</title>
</head>
<body>
 <div class="ui-alert-panel">
		<h1>服务器内部错误</h1>
		<p>处理您的请求时发生错误!请确认您通过正确途径操作。</p>
	</div>
  <div style="display:none;">
  <%  //此处输出异常信息
  	  exception.printStackTrace();

	  ByteArrayOutputStream ostr = new ByteArrayOutputStream();
      exception.printStackTrace(new PrintStream(ostr));
      out.print(ostr);
  %>
  </div>
</body>
</html>

原文地址:https://www.cnblogs.com/firstdream/p/8398922.html

时间: 2024-11-05 13:49:42

web.xml配置错误页面,及输出错误信息的相关文章

web.xml文件中的7个错误的安全配置

关于Java的web.xml文件中配置认证和授权有大 量 的 文章.本文不再去重新讲解如何配置角色.保护web资源和设置不同类型的认证,让我们来看看web.xml文件中的一些常见的安全错误配置. (1) 自定义的错误页面没有配置 默认情况下,Java Web应用在发生错误时会将详细的错误信息展示出来,这将暴露服务器版本和详细的堆栈信息,在有些情况下,甚至会显示Java代码的代码片段.这些信息对为他们的病毒需找更多信息的黑客来说是一种恩惠.幸运的是,通过配置web.xml文件来展示自定义的错误页面

Web.xml配置详解(转)

Web.xml配置详解 Posted on 2010-09-02 14:09 chinaifne 阅读(295105) 评论(16) 编辑 收藏 1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义).

web.xml配置详解(2)

1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义).所有部署描述符文件的顶层(根)元素为web-app.请注意,XML元素不像HTML,他们是大小写敏感的.因此,web-App和WEB-APP都是不

tomcat web.xml 配置

1<web-app> 2<error-page> 3<error-code>404</error-code> 4<location>/NotFound.jsp</location> 5</error-page> 6<!-- --> 7</web-app> 这样就可以了 下面的link可以看到更进一步的说明 http://fanqiang.chinaunix.net/app/web/2006-04-2

Spring MVC的web.xml配置详解(转)

出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在web.xml配置监听器ContextLoaderListener(listener-class) ContextLoaderListener的作用就是启动Web容器时,自动装配ApplicationContext的配置信息.因为它实现了ServletContextListener这个接口,在web.

maven工程web层的web.xml配置文档内容

下面是web层,web.xml配置文档里面需要配置的东西: 1.lo4j配置 2.读取spring文件配置 3.设计路径变量值 4.spring字符集过滤器 5.登陆过滤器 6.springMVC核心配置 7.session过期时间 8.错误页面跳转 以下是实例: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSch

SSH框架 web.xml配置

<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.s

java web.xml配置详解

1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener>中的类实例,创建监听器. 二  Load-on-startup Load

160329(二)、web.xml配置详解

1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener>中的类实例,创建监听器. 二  Load-on-startup Load

web.xml 配置介绍

这个不是原创,有点早了,具体从哪里来的已经记不得了.但是东西是实实在在的. 1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener&g