首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

(转)web.xml 配置404和500异常的自定义页面

2012-09-20 
(转)web.xml 配置404和500错误的自定义页面web.xml ?xml version1.0 encodingUTF-8? web-app ver

(转)web.xml 配置404和500错误的自定义页面
web.xml

 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4"      xmlns="http://java.sun.com/xml/ns/j2ee"      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee      http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">     <error-page>     <error-code>404</error-code>    <location>/building.jsp</location></error-page><error-page>    <error-code>500</error-code>    <location>/error.jsp</location></error-page>    </web-app>



JSP页面的关键在于

1 isErrorPage="true"

2 response.setStatus(HttpServletResponse.SC_OK);

building.jsp
<%@ page language="java" contentType="text/html; charset=GBK" isErrorPage="true" pageEncoding="GBK"%><%response.setStatus(HttpServletResponse.SC_OK);      %><%/*** 本页面是在客户查找的页面无法找到的情况下调用的*/response.setStatus(HttpServletResponse.SC_OK); %><body>正在制作... <a href="javascript:history.go(-1)">返回</a><br/>也可能页面连接更改了,请按 F5 键刷新整个页面看看,特别是菜单!</body>


error.jsp
<%@ page language="java" contentType="text/html; charset=GBK" isErrorPage="true" pageEncoding="GBK"%><%@ page import="java.io.*,java.util.*"%><%response.setStatus(HttpServletResponse.SC_OK);      %><body>程序发生了错误,有可能该页面正在调试或者是设计上的缺陷.<br/>你可以选择<br/> <a href=<%=request.getContextPath()+"/forum/new.jsp" %>>反馈</a>提醒我... 或者<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));}%>111<%=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>


转自:http://blog.csdn.net/java2000_net/archive/2007/12/29/2000965.aspx

热点排行