Struts异常处理
1)、将Action的处理方法写成将异常抛出。throws Exception
2)、在Struts.xml中配置异常处理。
异常处理:
局部异常:将<exception-mapping.../>元素作为<action.../>元素的子元素配置。
全局异常:将<exception-mapping.../>元素作为<global-exception-mapping.../>的子元素配置,放在<package.../>标签下。
下面是一个异常处理的例子:
程序请单:src\org\crazyit\app\action\LoginAction.java
public class LoginAction extends ActionSupport{
private String username;
private String password;
private String tip;
//此处省略getter和setter方法
public String execute() throws Exception{
if(getUsername().equalsIgnoreCase("user"){
throw new MyException("自定义异常“);
}
if(getUsernam().equalsIgnoreCase("sql"){
throw new java.sql.SQLException("用户名不能为sql“):
}
if(getUsernam().equalsIgnoreCase("admin"){
addActionMessage("哈哈,服务器提示”);
return SUCCESS;
}
return ERROR;
}
}
程序清单:
src\struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="lee" extends="struts-default">
<!-- 定义全局结果映射 -->
<global-results>
<result name="sql">/WEB-INF/content/exception.jsp</result>
<result name="root">/WEB-INF/content/exception.jsp</result>
</global-results>
<!-- 定义全局异常 -->
<global-exception-mappings>
<!-- sql为转向的页面 -->
<exception-mapping exception="java.sql.SQLException" result="sql"/>
<exception-mapping exception="java.lang.Exception" result="root"/>
</global-exception-mappings>
<action name="login" class="org.crazyit.app.action.LoginAction">
<! -- 定义局部异常 -->
<exception-mapping exception="og.crazyit.app.exception.MyException" result="my"/>
<result name="my">/WEB-INF/content/exception.jsp</result>
<result name="success">/WEB-INF/content/welcome.jsp</result>
</action>
<action name=*">
<result>/WEB-INF/content/{1}.jsp</result>
</action>
</struts>
获取异常信息:
可以在exception页面通过以下方式获取异常信息:
<s:property value=“exception.message"/>输出异常信息
<s:property value="exceptionStack"/>输出堆栈信息
相关推荐
Struts2异常处理机制
本文档主要介绍了struts2的异常处理机制,希望对你有所帮助。
从网上搜索的一段关于struts1.x自定义异常处理的方法。
主要介绍了Struts2中异常处理机制分析,涉及到了声明式异常捕捉的相关内容,以及两种异常映射的分析,需要的朋友可以参考下。
我们在做项目中肯定都会遇到自定义业务异常 ,然后将业务异常信息跳转的统一的信息提示页面的情况,比如我们在struts的时候我们会用到struts的异常处理机制,我们在业务层会跑出我们遇到业务处理异常 ,然后交由...
出来工作一年时间了,我也大概对异常处理有了一些了解,在这呢小弟简单介绍下个人对异常处理的见解,抛砖引玉,希望各位大神提出宝贵的意见和建议。 拿spring+struts2+hibernate项目说明:通常一个页面请求到...
Struts2的配置文件、Struts2的Action介绍、 一个Action内包含多个请求处理方法的处理、处理结果、属性驱动和模型驱动、异常处理机制等。。。
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
12.异常处理 18 三、在Action获取Scope对象 19 方式一、与Servlet解耦合的非IOC方式 20 方式二、与Servlet解耦合的IOC方式 21 方式三、与Servlet耦合的非IOC方式 21 方式四、与Servlet耦合的IOC方式 22 四、OGNL与...
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator 验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator 验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
第8章到第9章介绍了开发Struts应用的一些实用技术,如Struts框架的扩展点、Struts应用的国际化,Validator 验证框架和异常处理机制等。第12章到第16章结合具体的Struts应用实例,详细介绍了Struts的标签库以及Tiles...
Struts图书馆管理系统是...此外,该系统还提供了良好的错误处理和异常处理机制,确保了系统的稳定性和可靠性。总之,Struts图书馆管理系统是一个功能强大、易于使用的Web应用程序,适用于作为毕业设计或课程设计的项目
8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 9.3.1 添加CVS资源库 9.3.2 提交...
整合的struts2 spring myibatis easyUI基础框架 ...2.异常处理机制 3.logback日记整合 4.oracle agile 整合(不需要agile,可以直接删除代码) 5.其他一些小东西的整合和整理 6.项目中有详细的注解
8.4.4 改变异常处理的方式 8.5 小结 第九章 CVS使用指南 9.1 CVS介绍 9.1.1 CVS简介 9.1.2 为什么要使用CVS 9.2 建立CVS的开发环境 9.2.1 下载CVS 9.2.2 配置CVS 9.3 CVS的使用方法 9.3.1 添加CVS资源库 9.3.2 提交...
它集成了领先的持久性框架,并且提供一个一致的异常层次结构。Spring 还提供了一种使用面向方面代码代替正常的面向对象代码的简单机制。 Spring AOP 允许您使用拦截器 在一个或多个执行点上拦截应用程序逻辑。加强...