1.在action中直接抛出异常并处理异常指定异常出现后的跳转页面;
public String update_person()throws Exception{
try{
...
}catch(ArithmeticException e){ //捕获异常
e.printStackTrace(); //打印异常
return "error"; //指定异常出现后的跳转页面
}
return “success”;
}
2. struts.xml中配置异常对象并指定异常跳转页面;
<action name="update_person" class="person" method="update_person" >
//将可能出现的Exception的类名和result的名称对应
<exception-mapping result="math-exception" exception="java.lang.ArithmeticException"/>
//将result的名称与相应的跳转页面对应
<result name="success">tongxunlu.jsp</result>
<result name="math-exception">error.jsp</result>
</action>
3.实际开发中经常将异常配置到全局异常中,能减少代码量并且能够实现异常的统一管理
<global-results>
<result name="input">/error.jsp</result>
<result name="math-exception">/error.jsp</result>
<result name="login">/nologin.jsp</result>
</global-results>
<global-exception-mapping>
<exception-mapping result="math-exception" exception="java.lang.ArithmeticException"/>
</global-exception-mapping>
4.在错误处理页面上显示错误信息
显示错误信息的方法有两种:一种是直接显示错误信息方便开发人员阅读并寻找出现错误的原因,
错误信息为: <s:property value="exception">
错误的堆栈信息为<s:property value="exceptionStack"/>
另一种是错误稍加处理,仅仅对操作用户起提示错误的作用。
在捕获异常后对异常进行说明 session.put("error", “操作失败请重试”);
在异常处理页面显示错误原因 ${error};
本文介绍了Struts框架中处理异常的多种方式,包括在Action中直接处理、通过配置文件映射异常以及使用全局异常处理机制。同时,还讨论了如何在错误页面显示异常信息。
915

被折叠的 条评论
为什么被折叠?



