`
LiYunpeng
  • 浏览: 950928 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

FLEX 里的全局错误处理

    博客分类:
  • Flex
阅读更多
转自http://args.cn/post/2010/02/translation-flex-inside-the-global-error-handling/

----------------------------------------
资讯类型: 翻译
来源页面: http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/
资讯原标题: Global Error Handling in Flex
资讯原作者: Brian Gray
FLEX 里的全局错误处理
我参与过不少大型的flex应用程序的开发,基本上所有关于平台的事情都让我感到高兴,包括快速构建原型,UI创建方面的强悍,不过运行时错误处理如此之难让我感到很郁闷。当程序缩放时,它会变得很难来保证它不会抛出一个运行时错误,默认的flash播放器没有任何响应,不给任何反馈和提示,这种事情将是不符合期望标准的。我找到了下面的这个方法(直到未来的flash player 10 bata版 支持这个)Jorg birkhold 描述的当任何错误抛出的时候,怎样调用事件分发器来抛出一个事件,代码如下:
private function onPreinitialize():void {
  // setup global error handling
  UIComponentGlobals.catchCallLaterExceptions = true;
  systemManager.addEventListener(“callLaterError”, handleErrors);
}
我在主程序里添加了一个事件处理函数,做了如下操作:
1.在控制台里打印出堆栈信息以供调试、
2.弹出一个对话框给用户,这个要具体看抛出的是什么样的错误,当然这个不一定会显示到屏幕上,但是一定要确保平滑的过渡,并阻止用户进一步的交互操作
3.如果允许使用Javascript,那么调用JavaScript的方法,在这里你可以做一些你想要做的事情,但是我建议是让用户跳转到一个提示错误的页面,告诉他们那里出错了,给出正确的页面地址,并让他们回到刚刚出错的地方,重新开始。
public function handleErrors(event:Event):void {
  if (event is DynamicEvent && event.hasOwnProperty(“error”)) {
    // you could also send this back to your server
    var error:Error = DynamicEvent(event).error as Error;
    trace(“Error!\n” + error.getStackTrace());
    Alert.show(“There has been an error in the application”, “”, Alert.OK);
    if (ExternalInterface.available) {
      ExternalInterface.call(“handleApplicationError”);
    }
  }
}
分享到:
评论

相关推荐

    FlexCAN详解

    FlexCAN模块的核心是CAN协议引擎(PE),它负责管理CAN总线上的串行通信,处理消息帧的接收和传输、验证和错误处理。控制器主机接口子模块用于与CPU或其他模块进行通信,实现消息缓冲区的选择、仲裁和ID匹配算法。...

    flex与flash cs 交互

    在实际开发中,你可能还需要考虑错误处理、数据类型转换等问题,以确保两个环境之间的通信顺畅无阻。在项目中,`testAS3.fla`可能是包含AS3代码和交互逻辑的Flash源文件,`flexFlash.mxml`是Flex项目的主文件,而`...

    cairngorm2.2.1 与 flex4的集成. error错误解决

    在本话题中,我们将探讨如何将Cairngorm 2.2.1版本与Flex 4进行集成,并解决可能出现的"error"错误。Flex 4,也称为Gumbo,是Adobe Flex SDK的一个重大更新,引入了Spark组件模型和FXG图形格式,为开发者提供了更多...

    Flex面试题.pdf

    Flex面试题涉及到多个方面,包括ActionScript(AS)版本差异、Flex开发框架、MVC模式的应用、内存管理、垃圾回收机制、前后端交互、性能优化以及Flex与Flash的协同开发等核心知识点。以下是对这些内容的详细解释: ...

    APE(flex out of memory)

    当你遇到“Out of memory-cannot load design mode”的错误时,这表明在使用Flex Builder或者Flash Builder等集成开发环境(IDE)时,程序在尝试加载设计视图或运行项目时,内存资源不足。 内存溢出是由于程序请求...

    词法分析器Flex.docx

    此外,还可以在用户子程序部分添加更多逻辑,如错误处理或更复杂的操作。 #### 六、总结 Flex作为一种强大的词法分析器生成工具,对于初学者和编辑器学习者来说是非常有用的。通过理解Flex的基本概念、工作原理...

    关于FlexCAN的芯片资料

    2. CAN协议引擎(PE)子模块:负责管理CAN总线上的串行通信,请求存取RAM接收和传输消息帧,验证接收到的消息以及进行错误处理。 3. 控制器主机接口子模块:选择接收和传输的消息缓冲区,使用仲裁与ID匹配算法,以...

    flex全中文手册(44页)

    - **基本示例**:一个简单的flex扫描器可以统计输入文件中的字符数和行数,通过定义全局变量并在规则中更新这些变量来实现。 #### 四、flex命令行选项与配置 - **选项说明**:flex提供了丰富的命令行选项,如`-o...

    Flex login flex cairngorm

    6. **错误处理和状态管理** - 如果登录失败,可以通过事件通知用户,并显示错误信息。 - 成功登录后,可以保存用户会话状态,以便后续页面的个性化。 7. **Cairngorm的其他优势** - 代码可维护性:Cairngorm的...

    Flash+Flex+Air移动开发入门经典 pdf

    6.2 全局错误处理 180 6.3 处理未捕获错误 180 6.4 try…catch语句 183 6.5 单步执行代码 185 6.6 小结 188 6.6.1 练习 189 6.6.2 本章所学内容 189 第7章 使用文件系统 191 7.1 从文件系统读取 191 ...

    Adobe Flex 编码规范

    7. **错误处理**: - 适当的异常处理是必要的,通过try-catch语句捕获并处理可能的错误。 - 对于可能出错的操作,提供用户友好的反馈信息。 8. **代码复用**: - 利用面向对象的特性,如继承、封装和多态,实现...

    flex 图片上传组件 php服务

    在实际应用中,可能会遇到一些挑战,比如多文件上传、进度条显示、错误处理等。Flex组件可以通过异步通信(如HTTPService或WebService)来实现这些功能。同时,为了提升用户体验,可以添加预览功能,让用户在上传前...

    flex 单点登录,前端后端源码 jar包

    5. 异常处理:错误和异常的捕获及反馈机制,确保系统稳定性。 jar包通常包含了编译后的类文件和依赖库,它们是Java应用程序运行所必需的。在本例中,jar包可能包含了Flex与Java后端通信所需的库,如BlazeDS或LCDS,...

    flex PMD - flex代码检查

    通过使用Flex PMD,开发者可以在编写代码阶段就预防错误,提高代码质量和可维护性,减少后期调试和维护的工作量。 在提供的压缩包文件中,包含了多个库和组件,这些文件是flexPMD运行所必需的: 1. `ant-1.7.0.jar...

    flex 现成开发包

    5. **错误处理**:在多线程环境下,错误处理变得尤为重要。开发者需要监听`WorkerErrorEvent`,以便在Worker线程发生错误时能够及时捕获并处理。 6. **性能优化**:合理地分配任务给Worker,避免频繁的消息传递,...

    Adobe Flex 编码指南

    8. **错误处理**:学习如何有效地捕获和处理运行时错误,以确保程序的稳定性和用户体验。 9. **性能优化**:了解如何减少不必要的计算,优化数据处理,以及如何利用缓存和延迟加载来提升Flex应用的性能。 10. **...

    将 Flex 集成到 Java EE 应用程序的最佳实践(完整源代码)

    MessageBrokerServlet 是真正处理 Flex 远程调用请求的 Servlet,我们需要将其映射到指定的 URL: 清单 5. 定义 Flex servlet <servlet> <servlet-name>messageBroker</servlet-name> <servlet-class>...

    flex与 struts2与 hibernate与spring集成实例项目

    5. **错误和异常处理**:配置全局的异常处理,确保任何错误都能得到妥善处理,并向客户端返回合适的反馈信息。 在实际项目开发中,这样的集成不仅提高了开发效率,也使系统的架构更加清晰,职责划分明确,便于维护...

    Flex4 文件上传

    4. **事件监听**:在Flex应用中,需要监听FileReference对象的`complete`、`dataInit`、`uploadProgress`等事件,以便了解上传进度,处理错误,并向用户反馈结果。 5. **安全性和优化**:为了确保安全性,应限制可...

Global site tag (gtag.js) - Google Analytics