文档章节

[转]Tomcat Error Page配置 与 Error Page在IE下不能转发的问题

leeoo
 leeoo
发布于 2012/03/26 15:25
字数 506
阅读 65
收藏 0

一:Tomcat Error Page配置

如果JSP页面出现异常,就会转到tomcat自动的那个异常页面,页面不怎么友好。jsp标准中提供了error page的配置,可以自己定义当出现错误时跳转到哪个页面。这个配置在web.xml里面进行配置,下面一步步来实现自定义错误页面。
1.首先,在web.xml加入下面的标签:
    
         400
         /400.html
    

    
         404
         /404.html
    

    
         500
         /error.jsp
    

     解释一下,error-code是错误代码,location是转向页面。如果这个配置成功,当服务器出现这个错误代码的时候,就会跳转到location这个页面。location可以是html文件,也可以是jsp页面。
2.下面编写一下error.jsp页面的代码,例如:
<%@page contentType="text/html;charset=Big5" isErrorPage="true"%>



    

错误:

<%=exception%>

    

错误内容:


     <%
         exception.printStackTrace(response.getWriter());
     %>


因为这个页面调用了exception内置对象,所以isErrorPage必须为true。
3.不仅可以根据html的错误代码来条转页面,也可以按异常类型来进行跳转,例如:

    javax.servlet.ServletException
    /errorhandler.jsp

不仅可以使用jsp内置exception对象来取得异常,也可以取得request中的attribute。例如:
<%@page contentType="text/html;charset=Big5" isErrorPage="true"%>



     错误码: <%=request.getAttribute("javax.servlet.error.status_code")%>

     信息: <%=request.getAttribute("javax.servlet.error.message")%>

     异常: <%=request.getAttribute("javax.servlet.error.exception_type")%>

二: Error Page在IE下不能转发的问题

这是IE自身的设定导致的,经过百度,找到几个解决办法:    
1, IE设定   工具-->Internet选项-->高级--->显示http友好错误信息(取消选择) , 这样就可以了
2, 设置指定错误页页状态为正常,来告诉IE这不是一个服务器错误, 从而不显示IE的自定义错误页 
<%
    response.setStatus(200); // 200 = HttpServletResponse.SC_OK
%>
3, 把错误页做大一点,弄个几百K 就可以显示错误页面 (加一个div块,display设为none就可以了),这个问题比较奇怪.

转自:http://blog.csdn.net/wangfang_0728/archive/2009/01/15/3785836.aspx
参考:http://jsf.javaeye.com/blog/141949

© 著作权归作者所有

leeoo
粉丝 27
博文 136
码字总数 83885
作品 0
浦东
程序员
私信 提问
请求的转发和重定向

请求的转发和重定向: 本质区别:请求的转发只发出了一次请求,而重定向则发出了两次请求。 什么时候用转发?什么时候重定向? 若目标的响应页面不需要从request中获取任何数据,则可以使用请...

祁猛
2016/11/06
76
0
nginx tomcat 404 页面跳转

今天业务需求需要把所有的404页面都跳转到一个固定页面,下面说下我的生产环境 Nginx+Tomcat实现反向代理,当Client请求某个action的时候如果tomcat抛出404,那么就指定nginx访问到一个首页。...

xinsir999
2017/08/15
0
0
Nginx实现404页面的几种方法【转】

一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看。 第一种:Nginx自己的错误页面 Nginx访问一个静态的html 页面,当这个页面没有的时...

bz_z
2018/06/07
261
0
Tomcat安全规范

1、telnet管理端口保护 使用telnet连接进来可以输入SHUTDOWN可以直接关闭tomcat,极不安全,必须关闭。可以修改默认的管理端口8005改为其他端口,修改SHUTDOWN指令为其他字符串。 vi conf/se...

射手Mr吴
2017/07/21
0
0
Nginx实现404页面的几种方法

一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看。 第一种:Nginx自己的错误页面 Nginx访问一个静态的html 页面,当这个页面没有的时...

旧风景
2018/08/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Centos7 安装zabbix-agent

rpm -i https://repo.zabbix.com/zabbix/4.2/rhel/6/x86_64/zabbix-release-4.2-2.el6.noarch.rpm 可以到https://repo.zabbix.com/zabbix找到对应的版本 yum install zabbix-agent -y 出现E......

abowu
昨天
8
0
文本编辑器GNU nano 4.4 发布

GNU nano 4.4 "Hagelslag" 更新日志: 启动时,光标可以放在第一个或最后一个出现位置 字符串前面带有+/string 或 +?string的字符串。 发生自动硬包装时((--breaklonglines),任何前导引号...

linuxCool
昨天
7
0
你知道字节序吗

字节序 最近在调一个自定义报文的接口时,本来以为挺简单的,发现踩了好几个坑,其中一个比较“刻骨铭心”的问题就是数据的字节序问题。 背景 自定义报文,调用接口,服务端报文解析失败 iO...

杭城小刘
昨天
3
0
设计模式之依赖倒置原则

方法

东风破2019
昨天
6
0
关于如何通过模拟器完成模拟步数提升傻瓜式解决方案(囧)

因为对Android开发不太了解,也没去问朋友所以误打误撞找到的一个提升步数的解决方案,当然只是针对某安APP运动RUN的解决方式吧。 对Android不太了解,所以找了很多的解决方案来看看能不能破...

华山猛男
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部