`
zhuchengzzcc
  • 浏览: 440209 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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

    博客分类:
  • java
阅读更多

 

一:Tomcat Error Page配置

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

 

     <error-page>
         <error-code>400</error-code>
         <location>/400.html</location>
     </error-page>

     <error-page>
         <error-code>404</error-code>
         <location>/404.html</location>
     </error-page>

     <error-page>
         <error-code>500</error-code>
         <location>/error.jsp</location>
     </error-page>

  

     解释一下,error-code是错误代码,location是转向页面。如果这个配置成功,当服务器出现这个错误代码的时候,就会跳转到location这个页面。location可以是html文件,也可以是jsp页面。


2.下面编写一下error.jsp页面的代码,例如:

 

<%@page contentType="text/html;charset=Big5" isErrorPage="true"%>
<html>
<head><title>出现错误</title></head>
<body>
     <H1>错误:</H1><%=exception%>
     <H2>错误内容:</H2>
     <%
         exception.printStackTrace(response.getWriter());
     %>
</body>
</html>

 
因为这个页面调用了exception内置对象,所以isErrorPage必须为true。


3.不仅可以根据html的错误代码来条转页面,也可以按异常类型来进行跳转,例如:

 

<error-page>
    <exception-type>javax.servlet.ServletException</exception-type>
    <location>/errorhandler.jsp</location>
</error-page>

 
不仅可以使用jsp内置exception对象来取得异常,也可以取得request中的attribute。例如:

 

 

<%@page contentType="text/html;charset=Big5" isErrorPage="true"%>
<html>
<head><title>错误信息</title></head>
<body>
     错误码: <%=request.getAttribute("javax.servlet.error.status_code")%> <br>
     信息:    <%=request.getAttribute("javax.servlet.error.message")%> <br>
     异常:    <%=request.getAttribute("javax.servlet.error.exception_type")%> <br>
</body>
</html>

 

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

这是IE自身的设定导致的,经过百度,找到几个解决办法:     
1, IE设定   工具-->Internet选项-->高级--->显示http友好错误信息(取消选择) , 这样就可以了
2, 设置指定错误页页状态为正常,来告诉IE这不是一个服务器错误, 从而不显示IE的自定义错误页

 

<%
    response.setStatus(200); // 200 = HttpServletResponse.SC_OK
%>

 
3, 把错误页做大一点,弄个几百K 就可以显示错误页面 (加一个div块,display设为none就可以了),这个问题比较奇怪.

 

分享到:
评论

相关推荐

    jsp(Tomcat)中errorPage不能使用的原因解决方法,Jsp技术文章,JSP系列教程,Jsp.htm.rar

    jsp(Tomcat)中errorPage不能使用的原因解决方法,Jsp技术文章,JSP系列教程,Jsp.htm.rar

    tomcat环境变量配置

    如果你的Tomcat安装在C盘里,如:c:\tomcat(在这里切记一下,安装Tomcat时,在其字母周围一定不要存在空格,否则最后可能导致配置不成功) 1,新建变量名:CATALINA_BASE,变量值:C:\tomcat 2,新建变量名:...

    Nginx+Tomcat负载均衡

    3.这里只需要修改Nginx的配置,让它通过tomcat来转发,所以我们在这一步只需要在nginx.conf中添加几行代码就行。 如果看不懂 。建议直接拿我替来用。 Copy下面的内容 替换 你的nginx.conf注意黄色端口要改为你的。 ...

    Servlet与JSP核心编程第2版

    12.8 errorpage和iserrorpage属性 12.9 isthreadsafe属性 12.10 extends属性 12.11 language属性 12.12 指令的xml语法 第13章 在jsp页面中包含文件和applet 13.1 在请求期间包含页面:jsp:include动作 ...

    JavaWeb实验报告(1).pdf

    实验环境 装有 Myeclipse 8.5,Tomcat6.0 的计算机一台 三、实验内容与步骤 《一》简单 Java Web 项目的开发与环境搭建 1.JDK1.6,Tomcat6.0,MyEclipse8.5 的安装和配置。 2. 编写一个求解 1—1000 内是"完数"的正...

    JSP中内建exception对象时出现500错误的解决方法

    本文实例讲述了JSP中内建exception对象时出现500...Tomcat5.0以后的版本error page在处理时会返回error code 500。而IE得到code 500后会检查该页面的长度,当长度低于某个值时,它会用自己默认的500出错页面来代替制

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    5.5 tomcat的安装与配置 184 5.5.1 安装tomcat 185 5.5.2 运行tomcat 186 5.5.3 tomcat启动分析 189 5.5.4 tomcat的体系结构 191 5.6 tomcat的管理程序 193 5.6.1 admin web应用程序 193 5.6.2 manager web...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    5.5 tomcat的安装与配置 184 5.5.1 安装tomcat 185 5.5.2 运行tomcat 186 5.5.3 tomcat启动分析 189 5.5.4 tomcat的体系结构 191 5.6 tomcat的管理程序 193 5.6.1 admin web应用程序 193 5.6.2 manager web...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    5.5 tomcat的安装与配置 184 5.5.1 安装tomcat 185 5.5.2 运行tomcat 186 5.5.3 tomcat启动分析 189 5.5.4 tomcat的体系结构 191 5.6 tomcat的管理程序 193 5.6.1 admin web应用程序 193 5.6.2 manager web...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    5.5 tomcat的安装与配置 184 5.5.1 安装tomcat 185 5.5.2 运行tomcat 186 5.5.3 tomcat启动分析 189 5.5.4 tomcat的体系结构 191 5.6 tomcat的管理程序 193 5.6.1 admin web应用程序 193 5.6.2 manager web...

    fckedit编辑器

    编辑器 FCKeditor2.4 使用说明 ...问题三: 上传时新建的中文目录全部乱码 虽然上传到服务器上的文件名正常,但在JSP页面点下载链接时文件名乱码导致不能正常下载 查找资料:TOMCAT 链接参数有中文时,乱码解决方法 ...

    java面试题

    什么情况下不建议使用Hibernate? 答:当数据量大,并且表关系复杂的时候不建议使用。 sleep()和wait()有什么区别? 答:sleep()是线程类的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但监控状态依然...

    greenplum-db-6.2.1-rhel7-x86_64.rpm

    Pivotal Greenplum 6 software is available for download from the Pivotal Greenplum page on Pivotal Network. Pivotal Greenplum 6 is based on the open source Greenplum Database project code. ...

    外文翻译 stus MVC

    • The page designer isn't able to have direct involvement in page development. • HTML embedded into code is ugly. For the Web, the classical form of MVC needed to change. Figure 4 displays the Web...

    超级有影响力霸气的Java面试题大全文档

     error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 19、...

    Jsp连接Access数据库(不通过建立ODBC数据源的方法)

    1. 在站点(我的站点为:E:\javatest)下建立文件夹“AccessDb”并在文件夹下建立数据库“test.mdb”以及表... charset=gb2312″ language=”java” import=”java.sql.*” errorPage=”” %&gt;&lt;!DOCTYPE HTML

    nginx 1.9 window 版本

    一般结合Tomcat 使用 配置信息如下: #运行用户 user www-data; #启动进程,通常设置成和cpu的数量相等 worker_processes 1; #全局错误日志及PID文件 error_log /var/log/nginx/error.log; pid /var/run/nginx.pid;...

    java 面试题 总结

    error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 16、...

    JBoss Seam 工作原理、seam和hibernate的范例、RESTFul的seam、seam-gen起步、seam组件、配置组件、jsf,jboss、标签、PDF、注解等等

    1.1.2. 在Tomcat 服务器上运行示例.......................................................................................................................... 15 1.1.3. 运行测试..............................

    Spring Security 中文教程.pdf

    23.3. 为tomcat配置SSL 24. 替换验证身份 24.1. 概述 24.2. 配置 A. 安全数据库表结构 A.1. User表 A.1.1. 组权限 A.2. 持久登陆(Remember-Me)表 A.3. ACL表 A.3.1. Hypersonic SQL A.3.1.1. ...

Global site tag (gtag.js) - Google Analytics