最近在研究JSF框架,想将手头的一套C/S系统Web化,再提供一套B/S系统,这样的话方便管理人员能够方便的查看公司的销售业绩,在使用JSF学习和使用过程中发现一个号称“业界最佳的Web开发体验"的Web开发框架,它就是Apusic OperaMasks,是由金蝶公司的OperaMasks团队负责开发,Apusic OperaMasks是一种开源的基于J2EE的Web开发技术,它的官方社区是:www.operamasks.org 。OperaMasks遵循 LGPL 协议,目前最新版本是2.2,遵循 JSF 1.2 规范,OperaMasks内置了许多丰富的组件,包括:DataGrid、Tree、DataView、Chart以及各种布局组件等,大多数组件是基于 ext-js 的,支持动态切换 Look &Feel的能力,同时也提供了非常不错的集成开发工具OperaMasks Studio和内置的Apusic应用服务器,OperaMasks Studio是基于Eclipse的JEE开发平台,免费的,提供了JEE Web开发环境,包括可视化界面设计、支持组件的拖拽;并和应用服务器进行紧密集成,为JEE应用开发;Apusic应用服务器是全球第四家通过JavaEE 5兼容性测试认证的产品,值得国人骄傲。
OperaMasks 的设计理念很超前,OperaMasks提出了一种全新的编程模型:IoVC——“Inversion of View-Control”,即“视图控制反转”,这样的话在后台可以轻易的控制前台UI的展现,而且还能将展现层与业务逻辑更好的解耦。
在OperaMasks的官方网站提供了体验中心,里面有用OperaMasks框架开发的Demo,很有参考价值,也提供源代码和war包下载,OperaMasks官方网站上的资料都很全面,介绍的非常的详细,可以免费下载下来学习学习。
使用OperaMasks开发的一个最大的特点使用Annotation来简化配置文件的配置,开发JSF程序通常都需要配置faces-config.xml文件, 如果项目很庞大,在一个faces-config.xml文件中管理ManageBean的确很麻烦,在OperaMasks中,只需要一个 @ManagedBean 的 annotation 声明即可,不过使用Annotation的解决方案也不是很完美,如果ManageBean配置错误了,想定位错误就很麻烦了,这样想想配置faces-config.xml文件也不是那么讨厌,起码在一个文件里面找错误相对比在分散的多个类中找错误要方便不少吧。如果应用服务器够智能的话还会报告出在解析哪行xml文件出错。
个人感觉,虽然OperaMasks Studio很方便开发,在国内能将Eclipse插件做到这种地步的确非常的不错了,但是感觉OperaMasks Studio做的还不够细致,在正常使用的过程中会弹出“java.lang.NullPointerException”的提示,感觉很不好。
大家如果有兴趣的话去OperaMarks体验一把吧.也欢迎大家一起交流.