我用的是flex4+cairgorm3。
flex端需要捕捉java端抛出的异常,之前的做法是:
<fx:Declarations>
<rule:AddUserCommand/>
</fx:Declarations>
在AddRuleCommand.as中,定义如下方法:
[CommandFault(selector="add")]
public function error(fault:Fault):void
{
if(fault.rootCause != null)
{
Alert.show(fault.rootCause.message,"错误");
}else{
Alert.show(fault.faultString,"错误");
}
}
Java端抛出异常:
throw new CollectUserException("添加用户时,名字不能为空");
可是这样,当java端抛出异常时,前端却毫无反应。这里我们要做出修改:
在Context里面用到parsley的DynamicCommnad标签:
<fx:Declarations>
<DynamicCommand type="{AddUserCommand}" selector="add"/>
</fx:Declarations>
AddRuleCommand.as改为:
public function error(fault:Fault):void
{
if(fault.rootCause != null && fault.rootCause.message != undefined)
{
Alert.show(fault.rootCause.message,"错误");
}else{
Alert.show(fault.faultString,"错误");
}
}
这里注意:去掉了[CommandFault(selector="add")],因为我们已经在DynamicCommand里面定义了。这样就能够显示异常弹出框了。
--------------------------------------------------------------------
DynamicCommand:
对于Command层,方法至少有三个:execute,result和fault,代码如下:
public class SaveUserCommand {
[Inject]
public var service:RemoteObject;
public function execute (event:UserEvent) : AsyncToken {
return service.saveUser(event.user);
}
public function result (user:User) : void {
// do something with the result
}
public function error (fault:Fault) : void {
// do something with the result
}
}
我们一般用一个完整的命令对象对结果进行处理。这个对象仅是单个方法,用于执行命令。
parsley为每个匹配消息创建一个新的命令实例。多个命令对象可以并发执行,并且不进行任何交互。
分享到:
相关推荐
《Parsley 2.3.1:一个全面解析的资源宝库》 Parsley,这个名称在编程世界中可能并不广为人知,但它在特定的开发领域却...通过深入学习和实践,你将能够充分利用Parsley的强大功能,构建出优雅、高效的软件解决方案。
**ParsleyTest Flex框架Parsley的使用入门** Parsley是ActionScript 3.0的一个强大依赖注入(DI)和控制反转(IoC)框架,它为Flex和Adobe AIR应用程序提供了灵活的架构支持。这个名为"ParsleyTest"的压缩包文件...
10. **最佳实践**:使用Parsley Flash API,开发者能够遵循最佳实践,如单一职责原则(SRP)、开闭原则(OCP)等,从而提高代码质量并减少维护成本。 综上所述,Parsley Flash API是Flash开发者实现高效、模块化和...
**Parsley.js** 是一个强大的前端验证框架,专门用于JavaScript,它的主要目的是在用户提交表单之前确保输入数据的有效性和正确性。这个框架通过添加轻量级的DOM数据属性和事件来实现验证,无需编写复杂的JavaScript...
在本篇文章中,我们将深入探讨Parsley框架的核心概念、使用场景以及如何通过提供的示例文件`Parsley2Flash.zip`和`Parsley2Flex.zip`来学习和应用Parsley。 1. **依赖注入(Dependency Injection)** - 依赖注入是...
Parsley 是一个专门为 Flex 和 Flash 开发的 Inversion of Control (IOC) 容器和消息框架,旨在创建高度解耦的架构。它的核心功能包括依赖注入、对象生命周期管理和消息传递,且具备良好的扩展性。Parsley 不仅能在 ...
标题中的“Parsley LOC框架”指的是Parsley框架,这是一个专门为Adobe Flex和ActionScript开发者设计的开源依赖注入(Dependency Injection)和应用架构框架。它增强了Flex和Flash应用程序的可维护性和可扩展性,...
### Parsley 2.4 英文开发手册关键知识点解析 ...通过对 **IoC 容器**、**依赖注入** 和 **消息传递** 等核心概念的理解和掌握,开发者能够更好地利用 **Parsley** 框架提供的特性,构建出高效、解耦的应用系统。
Flex Cairngorm和Parsley是两种在Adobe Flex框架中广泛使用的MVC(Model-View-Controller)设计模式实现库,它们主要用于构建大型、复杂的富互联网应用程序(RIA)。本源码Demo提供了这两种技术的集成应用实例,帮助...
"Parsley中文版"是一个为中文用户提供服务的软件或工具,它的出现旨在解决英文版本使用时的语言障碍,使得更多中国用户能够便捷地利用Parsley进行相关操作。这个免费共享的资源不仅体现了社区的互助精神,也为有需求...
使用Parsley的基本步骤如下: 1. **安装Parsley**: 在你的Python环境中,可以通过pip来安装Parsley,命令如下: ``` pip install parsley ``` 2. **导入Parsley**: 安装完成后,你需要在Python代码中导入...
这个库提供了一种简洁且灵活的方式来确保用户在交互时提供的信息满足预设的验证规则,从而提高用户体验并减少服务器端的无效请求。 **一、Parsley.js的核心功能** 1. **实时验证**:Parsley.js可以在用户输入时立即...
Parsley 2.0 is available in early dev mode for testing purpose. You can see it there at the moment: Parsley2 doc Please have a try, and your feeback here would be much appreciated! Thanks
若你不知道parsley,但您一定听过Cairngorm、Mate、PureMVC、Swiz或SpringAcitonScript,只要听说过其中之一就好了,因为parsley也是他们行列中的一员,是Adobe项目组今年7月份推荐的一个灵活的flex框架!
在实际项目中,Parsley和Flex的结合使用可以帮助你构建出可扩展性强、易于维护的RIA。而掌握这些技巧和知识,将使你在面对复杂的Flex应用开发时更加游刃有余。所以,无论是初学者还是经验丰富的开发者,都应仔细研读...
- 初学者可以通过创建一个简单的"Hello World"应用程序来快速了解Parsley的基本使用。 - 在这个示例中,开发者会学习如何在Flex项目中引入Parsley的SWC库,并创建一个显示"Hello World"的视图组件。 3. **添加...
4. **编程语言特性和库的使用**:Parsley可能是用某种编程语言(如Java、C++、Python等)编写的,通过分析源码,我们可以了解该语言的高级特性和常用库的用法。 5. **调试与测试**:源码中可能包含单元测试或集成...
### JavaScript表单验证 - Parsley.js使用和配置 #### 概述 在现代Web开发中,表单验证是一项至关重要的任务。它不仅提高了用户界面的友好性和可用性,还能够帮助开发者确保数据的有效性和安全性。Parsley.js是一...
无论是新手还是经验丰富的开发者,都可以通过Parsley框架的入门章节快速上手,并通过示例用例学习如何使用Parsley。 总的来说,Parsley框架提供了一种强大的方式来管理应用程序中的对象依赖关系,提高应用程序的...