javaweb项目中errorPage的问题

Posted StephenChowcai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaweb项目中errorPage的问题相关的知识,希望对你有一定的参考价值。

我们的请求找不到时,会跳到错误页面,tomcat提供了一个错误页面,但是不太好。
分析:
tomcat自带错误页面不好的原因:有一下两点:
 1.不好看;
 2.不能为seo做出贡献。
思考:如何解决以上问题? 
答:那就是自己定义错误页面,然后替换掉原来的错误页面。
设置步骤:共两部:
1.在web.xml文件中加入一下代码,保证出错或找不到页面是会跳转到如下页面:
<error-page>
    <error-code>400</error-code>
    <location>/400.jsp</location>
</error-page>
  
<error-page>
    <error-code>404</error-code>
    <location>/404.jsp</location>
</error-page>
  
<error-page>
    <error-code>500</error-code>
    <location>/error.jsp</location>
</error-page>
2.自己写一个error.jsp页面,然后将其头部isErrorPage设置为true即可。
 <%@page contentType="text/html;charset=utf-8" isErrorPage="true"%>


3.提示:还可以在error.jsp页面中加入相关信息,让其打印出错误信息来,操作如下:
 错误码: <%=request.getAttribute("javax.servlet.error.status_code")%> <br>
 信息: <%=request.getAttribute("javax.servlet.error.message")%> <br>
 异常: <%=request.getAttribute("javax.servlet.error.exception_type")%> <br>


注意点:以下内容,请务必注意务必牢记:
 tomcat的web.xml文件和项目的web.xml都可设置以上代码,注意区别点:以一个名为test的Java项目为例:
 http://localhost:8080/test/asdf  -->  找不到asdf页面,会跳到test项目的web.xml文件设置的errorpage;
 http://localhost:8080/asdf  -->  找不到asdf页面,会跳到tomcat的web.xml文件设置的errorpage.

































以上是关于javaweb项目中errorPage的问题的主要内容,如果未能解决你的问题,请参考以下文章

第一个 Maven 应用程序

javaweb表单提交中文乱码问题?

java 小例子

javaweb访问计数

Tomcat 的 ErrorPage 实现原理分析

Tomcat 的 ErrorPage 实现原理分析