在项目中采用了struts2的<global-results>&<global-exception-mappings>处理异常,并在web页面上显示异常,在这里备忘一下
1.在strtus.xml中配置如下
<!----> <global-results>
<result name="unhandledException">/common/systemFail.jsp</result>
<result name="input">/common/headerMsg.jsp</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception" result="unhandledException"/>
<exception-mapping exception="com.xxxx.exception.GuiException" result="input"/>
</global-exception-mappings>
GuiException是自定义的Exception
2.完成systemFail.jsp和headerMsg.jsp,headerMsg显示的是知道的Exception,systemFail.jsp显示unhandle的Exception
<!---->systemFail.jsp
<%@ include file="../common/header.jsp" %>
<div style="padding-top:30px">
</div>
<div id="systemFailed" style="text-align:left; padding-left:80px; padding-right:80px;">
<s:property value="exception"/>
</div>
<br/>
<div style="text-align:left; padding-left:80px; padding-right:80px;">
<s:property value="exceptionStack"/>
</div>
<%@ include file="../common/footer.jsp" %>
headerMsg.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<div id="errorMessage" class="errorMessageText">
<s:actionerror/>
<s:actionmessage/>
<s:if test="exception != null">
<s:if test="exception.errorCode != null">
<s:set name="errorCode" value="exception.errorCode"/>
<s:set name="args" value="exception.args"/>
<s:text name="${errorCode}">
<c:forEach var="arg" items="${args}">
<s:param>${arg}</s:param>
</c:forEach>
</s:text>
</s:if>
<s:else>
<s:property value="exception.message"/>
</s:else>
</s:if>
</div>
这里的Exception已经是自定义的GUIException(在struts.xml中配置过了),所以直接从里面取信息(args,errCode...)
3. 在Action中trhows GuiException,然后strtus2会默认使用exception的interceptor将Action中抛出的GUIException拦截,然后匹配xml文件,这样就完成了错误处理.
总结:
还是利用了struts2的interceptor机制,方便的拦截了异常.
<package name="pkg" extends="struts-default" abstract="true">
<global-results>
...
</global-results>
<global-exception-mappings>
...
</global-exception-mappings>
</package>
<package name="test" namespace="/test" extends="pkg">
</package>
分享到:
相关推荐
01 为Struts 2.0做好准备 02 常用的Struts 2.0的标志(Tag) 03 Struts 2.0的Action讲解 04 在Struts 2.0中国际化(i18n)您的应用程序 05 转换器(Converter)——Struts 2.0中的魔术师 06 在Struts 2.0中实现表单...
Struts2.0是Java Web开发中的一个强大框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性高、结构清晰的Web应用程序的工具。这个"Struts2.0视频教程+struts2.0中文教程"包含的资源旨在...
Struts 2.0系列(MAX),pdf格式,全方位介绍struts2: 常用的Struts 2.0的标志(Tag)介绍 Struts 2.0的Action讲解 在Struts 2.0中国际化(i18n)您的应用程序 转换器(Converter)——Struts 2.0中的魔术师 在Struts ...
JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0JavaEE源代码 Struts2.0...
Struts2.0是Java Web开发领域中的一款流行框架,它是Struts1.x与WebWork框架的结合体,继承了两者的优点并进行了创新。在Struts2.0中,核心概念之一是Action,它被设计为一个简单的POJO(Plain Old Java Object),...
Struts2.0是一款强大的Java Web框架,它在MVC(Model-View-Controller)设计模式的基础上,提供了灵活且强大的架构来构建企业级的Web应用程序。这个“Struts2.0 Jar包”包含了所有必要的库文件,使得开发者可以便捷...
Struts2.0是Java Web开发中的一个热门框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建动态Web应用程序的强大工具。API文档是理解任何框架核心功能的关键,对于Struts2.0也不例外。让我们深入...
Struts2.0 jar包是Java Web开发中的一个重要组件,它是Apache Struts框架的一个特定版本。Struts2是一个基于MVC(Model-View-Controller)设计模式的开源框架,用于构建可维护性高、结构清晰的Java应用。该框架极大...
6. **异常处理**:Struts2.0提供了全局的异常处理机制,可以统一处理应用程序中的异常,提高代码的可维护性和用户体验。 7. **国际化支持**:Struts2.0内置了对多语言的支持,可以轻松实现应用的国际化。 8. **...
Struts 2.0 是一个基于 Model-View-Controller (MVC) 设计模式的Java Web应用程序框架。它并非Struts 1的直接升级,而是源自WebWork框架,提供了更强大的特性和灵活性。Struts 2的核心是Action,它是业务逻辑处理的...
Struts2.0是Java Web开发中的一个强大框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性高、结构清晰的Web应用程序的工具。这个"Struts2.0学习系列"旨在帮助初学者及进阶者深入理解并...
10. **异常处理**: Struts 2.0提供了全局和局部的异常处理机制,允许开发者集中处理程序运行时的错误,提高代码的健壮性。 通过以上介绍,我们可以看出Struts 2.0是一个功能完善的MVC框架,它不仅弥补了Struts 1.0...
struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架
### Struts 2.0 详细配置解析 #### 一、Struts 2.0 简介 Struts 2.0 是一个基于 Java 的开源框架,用于开发 Web 应用程序。它继承了 Struts 1.x 的优点,并在架构上进行了改进,更加灵活且易于扩展。Struts 2.0 ...
Struts 2.0提供了一套完整的异常处理机制,可以捕获并处理Action执行过程中的异常,同时提供自定义的错误页面。 9. **国际化与本地化** Struts 2.0支持多语言环境,通过资源包(Resource Bundle)管理不同语言的...
Struts2.0是Java Web开发中一个非常重要的框架,它是Apache软件基金会的Struts项目的一个版本,专门用于构建基于MVC(Model-View-Controller)设计模式的Web应用程序。Struts2.0的出现极大地简化了Java Web开发,...
Struts2.0是Java Web开发中一个非常重要的框架,它是Apache软件基金会的Jakarta项目下的一个开源产品,主要用于构建MVC(Model-View-Controller)模式的应用程序。本入门案例将带你逐步了解如何使用Struts2.0来创建...
Struts2.0 是一个非常流行的Java Web框架,它基于MVC(Model-View-Controller)设计模式,用于构建高效、可维护的企业级应用程序。这个压缩包包含了Struts2.0的核心jar文件以及可能的源代码,使得开发者可以直接查看...
一、为Struts2.0做好准备 在开始Struts2.0的学习之旅前,首要任务是搭建开发和运行环境。这一步骤至关重要,它包括从Apache官方网站下载Struts2.0包,以及在Eclipse等IDE中创建新的Web项目。通过将Struts2.0的库...