快速业务通道

Eclipse富Ajax开发平台在CAS Software AG项目中的应用 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23

Eclipse富Ajax开发平台在CAS Software AG项目中的应用(2)

时间:2010-12-04 infoq 译:连小剑

CAS PIA用Elipse RAP在表示层中构建用户界面有以下原因:

用户感观 - Elipse RAP可以构建出非常符合人体工程学而且可切换主题的富 用户界面,已经非常类似于胖客户端的感受。

开发效率 - AJAX和JavaScript被包装成对开发者透明的组件, 从而使得程序 员可以用他们熟悉的Java类库和IDE来开发。

易于扩展 - 尽管RAP使程序员可以不直接使用JavaScript、HTML和CSS来开发 ,但是它也提供了足够的可扩展性,使定制的组件和风格可以毫无问题的加入到 应用当中。

工程质量 - Elipse和它的产品族拥有最好的软件设计和体验,RAP也不例外 。

单一代码库 - RAP能够被编译为AJAX或者RCP应用程序。

表示层也包含了OSGi运行时环境,这为它在别的CAS产品中的使用提供了良好 的模块性和复用性。CAS选择Eclipse Equinox项目作为他们实现OSGi的工具,定 义如下:

...一个OSGi R4核心框架规范的实现,即一组实现了若干可选的OSGi服务和 其它架构的软件包,可以运行在基于OSGi的系统上。

总的来说, Equinox 项目的目标是成为一流的OSGi社区和使Eclipse成为界 面组件视觉化的开发工具。

通过利用Equinox提供的分离机制,CAS已实现了自己的核心模块,这些模块 包含了许多软件包,这些包可以作为通用组件应用到不同的应用程序中。每个模 块都提供了一些扩展点,通过这些点,根据所开发的不同应用的需求,可以实现 不同的特定的行为。例如,用户管理组件可以用在许多应用程序当中,而联系人 管理模块就比较特殊,只会被用到CRM相关的应用中。OSGi提供的这种扩展性使 模块很容易被扩展,比如在构建和部署阶段。

CAS PIA的另一部分是商业逻辑和典型的服务器端相关功能,即服务核心或者 EIM(企业信息管理)。设计和开发EIM是把它作为CAS整个产品线的核心。服务 核心提供了通过Sun JAX-WS、RMI和REST服务来远程访问的功能,核心同样也利 用Spring框架设计成组件化的风格,都是可以被扩展的。

持久层用了MySQL数据库,同时也包含了CAS特别开发的定制组件。定制组件 包含了一个可扩展的数据模型、一套定制的查询语言(CAS-SQL)和一个权限管 理组件。该权限管理组件利用ACEGI框架来进行用户鉴权,也对数据库层的每个 对象都提供了ACL(访问控制列表)。这套权限管理系统和 Oracle的OLS比较类 似,而该系统还支持MySQL之外的其它数据库,从而使CAS可以在别的产品上使用 它。

RAP Eclipse RAP的单元测试

单元测试在任何软件开发中都是非常重要的一个环节,即使是在软件的客户 端也不例外。很多时候,应用程序的界面开发人员发现很难对代码做单元测试。 通常,这是因为表示层和应用逻辑紧密耦合从而使得单元测试代码的开发非常复 杂和难于维护。CAS的程序员们设法把尽量多的逻辑都放在服务器端,从而使单 元测试(代码)非常健壮。然而,不是所有的东西都可以放到服务器端,而这也 是为什么好的UI设计成为一个很重要因素的原因。

通过用通用设计模式比如MVC、表示层模型(Presentation Model)、模型视 图代理(Model View Presenter)等等来实现用户界面,将视图从逻辑当中解耦 出来,从而使单元测试变得相对容易。即便进行了良好的设计,也还是有很多的 问题需要面对,尤其是RAP用户界面的测试。首先,RAP UI组件包含了一个Java 层和一个JavaScript层,这意味着有两个部分的代码需要测试。Qooxdoo,即RAP 使用的Ajax应用程序框架,提供了类似于JUnit和JSUnit的单元测试工具。CAS利 用这些工具来对组件的JavaScript层进行测试,用JUnit来测试Java层。下面是 CAS提供的一个单元测试代码,展示了对定制组件JavaScript层的测试。

/** * Memory leak 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号