Eclipse富Ajax开发平台在CAS Software AG项目中的应用
2009-12-02 00:00:00 来源:WEB开发网开发中遇到的问题
对开发人员来说任何新技术都一定要有一个学习曲线,发展过程中也会有很多问题。在CAS PIA的开发过程中开发团队陷入了一些与性能和部署相关的问题当中。
他们马上遇到的第一个问题就是客户端和服务器端都出现较低的性能和高的资源开销。CAS利用可以复用GUI控件而不是反复创建它们的对象池和缓存来提升一些性能。尽管CAS所做的努力有所帮助,但是对于完全解决他们在Internet Explorer上的性能问题还远远不够,这也使得CAS PIA不能支持IE。然而CAS对短期内Qooxdoo框架的性能提升和Internet Explorer8的即将发布对CAS PIA表现出可接受的性能和对IE的支持相当有信心。另一方面,在别的浏览器上特别是Firefox,都已经在近期取得性能和资源开销问题方面的提升。
另外一个令人头痛的问题是用一种连续累计的构建过程开发和部署整个应用程序的RAP组件。由于CAS选择将Eclipse Equinox部署到Tomcat中而不是将web服务器嵌入到Equinox,所以这是唯一的问题。CAS使用了Eclipse中的Releng- Tools,这个工具可以支持夜间自动构造,然而它们在使用Ant的过程中发现文档太少而且有很多奇怪的问题(比如,动态生成构建脚本)。最终确保夜间构建的正常运行花费了大量的监控和测试。
与此同时CAS不得不解决将Equinox部署到Tomcat中的问题。对这个配置问题提出的解决方案是,生成一个单独的WAR文件,这个文件中包含了所有的商业组件、运行时环境、Equinox和RAP。但是,CAS PIA也需要EIM这么一个非OSGi组件和RAP部分一起集成到应用程序当中,从而使得两个部件之间可以不通过web服务和RMI直接通信。解决这个问题需要分两步,首先必须把EIM服务器组件放到WAR文件的"lib"目录中。第二步涉及到对web.xml中servlet bridge的特殊配置。CAS用到了servlet桥中的“extendedFrameworkExports”参数,这个参数能使EIM和RAP组件根据需要集成在一起。
经验教训
CAS Software积极致力于开发和部署Eclipse RAP应用程序,即便在开始的时候碰到很多问题,他们仍然非常乐于使用Eclipse RAP来开发产品。他们发现用Eclipse RAP后开发人员的效率得到显著提高,这主要是因为Java程序员已经习惯于Eclipse的集成开发环境、调试工具和组件模型。
一旦CAS克服了以上提到过的问题而走过了陡峭的学习曲线,每个人都会乐于使用RAP来做开发。CAS希望RAP在未来产品中增加的唯一功能是从服务器端来触发客户端动作的能力。目前CAS PIA使用自主开发的一套方案,其实实际上称不上真正的解决方案,但CAS对RAP的未来充满信心。
未来发展方向
CAS Software AG目前在中小企业CRM市场上居于领导地位,他们计划到2010年时把这种领导地位拓展到整个欧洲。CAS PIA在2009年第一季度将会面试并且推广。最终目标是成为SaaS CRM产品欧洲地区供应商的前20位。
CAS会继续在使用和支持Eclipse RAP上发挥他们重要的作用,他们还将于2009年2月在匈牙利的赛格德大学开办有关RAP的课程。
更多精彩
赞助商链接