`
文鸯
  • 浏览: 305686 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

在web.xml或JSP中指定错误页面

阅读更多

在web.xml中,可以使用exception-type标签或HTTP状态码error-code标签声明错误页面。

根据异常类声明错误页面:

  1. <error-page>  
  2.   <exception-type>java.io.IOException</exception-type>  
  3.   <location>/error.jsp</location>  
  4. </error-page>  

exception-type指定的必须是一个Throwable,并且这个类在容器的类路径下能够被找到。

根据HTTP状态码声明错误页面:

  1. <error-page>  
  2.   <error-code>404</error-code>  
  3.   <location>/error.jsp</location>  
  4. </error-page>  

使用error-page标签的要点:

① 不论是根据exception-type还是error-code来声明错误页面,location指定的路径必须以斜线开头,也就是说它是相对于Web应用根的。

② 一个web.xml中可以使用多个error-page标签,一个error-page标签中只能使用一个exception-type或error-page。

 

在JSP中,可以在page指令中通过errorPage属性来指定错误页面:

  1. <%@ page errorPage="error.jsp" %>  

 

容器会为错误页面提供一个exception对象,不过要想在错误页面里访问这个对象,必须在错误页面里指定isErrorPage属性:

error.jsp
  1. <%@ page isErrorPage="true" %>  

然后,在scriptlet中就可以使用隐式对象exception,在EL中可以使用EL隐式对象${pageContext.exception}。

 

其它要点:

如果是JSP中抛出的异常,容器首先查看JSP中有没有指定errorPage属性,如果没有,再查看web.xml中有没有error-page标签;如果是Web应用中的其它地方抛出异常,容器只会查看web.xml中的error-page标签。

可以通过HttpServletResponse.sendError()方法来发送错误的HTTP状态码:

  1. response.sendError(HttpServletResponse.SC_FORBIDDEN);  
分享到:
评论
1 楼 zhglhy 2012-06-28  
很好,学习了。

相关推荐

    jsp简答题共4页.pdf.zip

    9. **错误处理**:JSP可以通过配置error-page元素在web.xml中指定错误处理器,或者在页面中使用&lt;jsp:exception&gt;标签捕获和处理异常。 10. **JSP与Servlet的关系**:JSP本质上是Servlet的简化版,两者都是用来构建...

    struts spring hibernate整合

    在struts-config.xml中指定路径:** 接下来,在`struts-config.xml`中指定Spring配置文件的路径。 ```xml &lt;plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"&gt; ...

    最简单的SpringMVC Maven配置.docx

    总结来说,最简单的SpringMVC Maven配置包括设置`web.xml`以配置Spring和SpringMVC,管理Maven依赖,并在`pom.xml`中指定项目依赖。通过这些基础配置,我们可以搭建起一个基本的SpringMVC应用,然后逐步添加业务逻辑...

    jsp的留言板jsp的留言板jsp的留言板jsp的留言板jsp的留言板

    应用应该包含错误处理机制,比如使用`try-catch-finally`块捕获异常,或者配置`error-page`元素在web.xml中指定错误页面。 综上所述,这个JSP留言板项目涵盖了JSP的基础应用、数据库操作、用户认证、页面跳转以及...

    Java开发指南-Servlets和JSP篇(PDG)

    8. **错误处理和异常处理**:通过配置`error-page`元素在`web.xml`中指定错误页面,以及在Servlet和JSP中捕获和处理异常。 深入理解这些概念并进行实践,将使你能够熟练地开发Java Web应用。在Java开发指南-...

    Intellij Idea创建或导入静态Web项目.docx

    另外,也可以在`web.xml`中指定默认的欢迎页面。 9. **启动和测试**: - 最后,启动Tomcat服务器,通过浏览器访问项目,检查运行结果。 以上就是使用IntelliJ IDEA创建或导入静态Web项目的基本流程。在整个过程中...

    SpringBoot框架实现JSP跳转和接口Json返回

    需要在SpringBoot的配置文件`application.properties`中指定静态资源和视图解析器路径: ``` spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suffix=.jsp ``` 3. **添加Tomcat依赖**: 因为JSP需要在...

    Portlet各类资料

    在portlet.properties中指定权限配置文件的位置,编辑web.xml、portlet.xml和liferay-portlet.xml来完善portlet的行为和配置。最后,根据示例将相关的JSP、Struts配置、Tiles定义和源码文件复制到相应目录,并重新...

    iedaSSM.zip

    为了使MyBatis能够正常工作,需要在`applicationContext.xml`中配置数据源,并在`mybatis-config.xml`中指定数据源和SqlSessionFactory。同时,创建数据库连接的JDBC配置,如数据库URL、用户名和密码。 **6. 编写...

    最新SSH框架搭建工程

    - **src/main/webapp**: Web应用的根目录,包含`WEB-INF`下的`web.xml`(Web应用部署描述符),以及视图资源(JSP页面)和其他静态资源。 - **pom.xml**: Maven项目的配置文件,定义了项目依赖(包括SSH框架的版本)...

    ·Struts2配置文件介绍 超级详细

    当开发者未在自己的`struts.xml`中指定某些配置时,默认会采用这些预定义的配置。 #### 二、struts.xml详解 - **Packages**:在`struts.xml`中,首先定义了一个或多个`package`元素,每个`package`都代表了一组...

    BBS论坛jsp

    2. 配置数据库连接参数,如在Web应用的配置文件(如web.xml)中指定数据库URL、用户名和密码。 3. 如果有自定义的jar库,将其放入WEB-INF/lib目录。 4. 启动服务器,论坛应能自动加载并运行。 5. 使用浏览器访问...

    -软件工程第一章作业

    这可能是因为在struts-config.xml中指定了的Action类在运行时没有被找到。问题可能出在编译后的.class文件没有被正确地放在类路径(classpath)下,特别是在Web开发中,.class文件应位于WEB-INF/classes目录下。确保...

    spring+springMVC+mybatis的maven项目搭建

    你需要在MyBatis的配置文件`mybatis-config.xml`中指定数据源和映射文件的位置。 在项目结构上,一般会包含以下几个主要目录: 1. `src/main/java`:存放Java源代码,包括Controller、Service、DAO等包。 2. `src/...

    struts动态方法配置

    动态方法调用是通过在请求URL中指定具体的方法名来实现的。例如,在`&lt;action&gt;`元素内并没有显式地声明不同的方法(如login、logout或register),但通过在请求中指定方法名(如`userAction!login.action`),Struts...

    应用jsp的公司管理系统

    8. **部署与配置**:系统需要在支持JSP的Web服务器(如Tomcat)上进行部署,并在服务器的配置文件(如web.xml)中指定相关的Servlet和过滤器。 9. **错误处理与日志记录**:系统应包含适当的错误处理机制,如异常...

    tomcat_jndi_hibernate.txt

    5. **环境变量引用:**为了使 Hibernate 能够使用 JNDI 数据源,还需要在 Hibernate 的配置文件(如 `hibernate.cfg.xml` 或 `persistence.xml`)中指定数据源的 JNDI 名称。 ```xml &lt;property name="hibernate....

    springMVC资料

    需要在`web.xml`中指定配置文件的位置: ```xml &lt;param-name&gt;contextConfigLocation &lt;param-value&gt;/WEB-INF/roadrantz-service.xml,/WEB-INF/roadrantz-data.xml,/WEB-INF/roadrantz-security.xml ``` ...

    standard-1.1.2.jar,jstl-1.1.2.jar

    JSTL是一个标准的标签库,它提供了各种各样的标签来处理常见的任务,如迭代、条件语句、XML处理、国际化等,从而避免了在JSP页面中编写过多的Java脚本。JSTL的核心库是`jstl.jar`,它包含了一系列基础标签,而`...

    DWR中文文档.pdf

    有时可能需要为不同的模块配置不同的`dwr.xml`文件,这时就需要在`web.xml`中指定这些配置文件的位置。此外,还可以定义J2EE角色来控制不同用户对服务接口的访问权限。 **2.5 插件配置** DWR支持多种插件扩展,这些...

Global site tag (gtag.js) - Google Analytics