ImageVerifierCode 换一换
格式:PPT , 页数:19 ,大小:99.50KB ,
资源ID:7929107      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-7929107.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(strut讲义 struts6_exception.ppt)为本站会员(gnk289057)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

strut讲义 struts6_exception.ppt

1、Struts应用的异常处理,Struts框架处理异常的流程,Struts框架处理异常的流程,Struts的控制器负责捕获各种异常。 当Struts的控制器捕获到异常后,在异常处理代码块中,创建描述异常信息的ActionMessage对象把它保存在ActionMessages(或其子类ActionErrors)对象中,然后把ActionMessages保存在特定范围(request范围或session范围)内。 接下来,视图层的标签检索特定范围内的ActionMessages对象,把本地化的错误消息输出到网页上。,Struts框架的异常处理机制的优点,可以避免直接向用户显示原始的Java异常信息

2、,而是在控制层对Java异常进行重新包装,在视图层提供能够让用户理解的错误信息。 Struts框架向用户显示的错误消息来自于Resource Bundle,这有助于实现异常处理的国际化。,Struts应用响应用户请求时的方法调用过程,ActionServlet类处理异常的机制,protected void process(HttpServletRequest request,HttpServletResponse response)throws IOException, ServletException ModuleUtils.getInstance().selectModule(reques

3、t,getServletContext();getRequestProcessor(getModuleConfig(request).process(request,response); ActionServlet类的process()方法不捕获任何异常,仅仅声明向上层调用方法抛出IOException或ServletException。,RequestProcessor类处理异常的机制,RequestProcessor类是Struts框架处理异常的核心组件。其process()方法不捕获任何异常,仅仅声明向上层调用方法抛出IOException或ServletException。以下是pro

4、cess()方法的部分代码: public void process(HttpServletRequest request,HttpServletResponse response)throws IOException, ServletException / Call the Action instance itselfActionForward forward =processActionPerform(request, response, action, form, mapping); ,RequestProcessor类处理异常的机制,RequestProcessor类的process(

5、)方法调用自身的processActionPerform()方法,该方法再调用Action类的execute()方法。以下是processActionPerform()方法的代码:protected ActionForward processActionPerform(HttpServletRequest request,HttpServletResponse response,Action action,ActionForm form,ActionMapping mapping)throws IOException, ServletException try return (action.e

6、xecute(mapping, form, request, response); catch (Exception e) return (processException(request, response, e,form,mapping); ,RequestProcessor类处理异常的机制,在processException()方法中,先查看是否存在ExceptionConfig对象,ExceptionConfig和Struts配置文件中的异常配置元素对应,ExceptionConfig对象中封装了元素的配置信息。 如果不存在ExceptionConfig对象,就继续向上层调用方法抛出异

7、常。如果找到了ExceptionConfig对象,就调用它的getHandler()方法获得异常处理类ExceptionHandler,并创建异常处理类的实例 最后调用ExceptionHandler类的execute()方法,来处理异常:handler.execute(exception, config, mapping, form,request,response);,ExceptionHandler类处理异常的机制(1),Struts框架提供了默认的异常处理类org.apache.struts.action.ExceptionHandler,它的execute()方法负责处理异常,Exc

8、eptionHandler类的execute()方法首先决定转发路径: if (ae.getPath() != null) forward = new ActionForward(ae.getPath(); else forward = mapping.getInputForward(); ,ExceptionHandler类处理异常的机制(2),接着把异常信息包装到ActionMessage对象中: / Figure out the error if (ex instanceof ModuleException) error = (ModuleException) ex).getAction

9、Message();property = (ModuleException) ex).getProperty(); else error = new ActionMessage(ae.getKey(), ex.getMessage();property = error.getKey(); ,ExceptionHandler类处理异常的机制(3),然后调用自身的storeException()方法。storeException()方法负责把ActionMessage对象保存在ActionMessages对象中,再把ActionMessages对象存放在适当的范围内。,Struts框架处理异常的时

10、序图,在Struts应用中处理异常的各种方式,以配置方式处理异常,配置元素,使用ModuleException类,在Struts API中提供了专门的异常类org.apache.struts.util.ModuleException,它是Exception类的子类。它的优点在于可以很好地和Struts的Resource Bundle绑定。ModuleException有以下构造方法: ModuleException(java.lang.String key)其中参数key指定错误消息key,与Resource Bundle中的消息key匹配。,Action类中抛出ModuleException

11、,trynew Model().businessMethod();catch(BaseException be)throw new ModuleException(“error.business.error“);,配置,元素包括以下属性: type:指定待处理的异常类。 handler:指定异常处理类,默认值为org.apache.struts.action.ExceptionHandler。如果设置为用户自定义的异常处理类,则该类必须继承ExceptionHandler。 path:指定转发路径。 key:指定错误消息key,Struts框架将根据这个key到Resource Bundle中寻找匹配的消息文本。 bundle:指定Resource Bundle,如果没有设置此项,将使用默认的Resource Bundle。 scope:指定ActionMessages的存放范围,可选值包括request和session。默认值为request。,配置,在Struts应用中处理异常的各种方式,以编程方式处理异常,参见例子Action3,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报