>>分享Java Web开发技术,并且对孙卫琴的《Tomcat与Java Web开发技术详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 24389 个阅读者 刷新本主题
 * 贴子主题:  web.xml中配置出错页面,处理异常 回复文章 点赞(0)  收藏  
作者:sunweiqin    发表时间:2018-09-13 04:25:51     消息  查看  搜索  好友  邮件  复制  引用

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

<!-- 默认的错误处理页面 -->
<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.获取异常信息及输出

<%@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>



程序猿的技术大观园:www.javathinker.net
  Java面向对象编程-->Swing组件(上)
  JavaWeb开发-->JavaWeb应用入门(Ⅱ)
  JSP与Hibernate开发-->第一个helloapp应用
  Java网络编程-->用Axis发布Web服务
  精通Spring-->Vue Router路由管理器
  Vue3开发-->通过Axios访问服务器
  HTTP请求方式:GET 对比 POST
  Servlet 网页重定向
  keepalived+nginx+docker实现负载均衡高可用服务
  在JSP中如何取得form表单中被选中的radio项的值
  Tomcat中对静态资源的处理
  网页上实现分享到微信和QQ等的源代码
  读《Tomcat与JavaWeb开发技术详解》的笔记
  关于GBK,GB2312,UTF-8字符编码的区别
  SOAP协议介绍
  Servlet4新特性介绍
  EL表达式语言介绍
  Java高级——HTTP重定向实现负载均衡
  欢迎读者们为《Tomcat与JavaWeb开发技术详解》书的升级提出宝...
  Java Servlet完全教程
  OpenBSD下tomcat安装卸载须知
  更多...
 IPIP: 已设置保密
树形列表:   
1页 1条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。