2007年7月1日,Kingdee發(fā)布了OperaMasks 1.0,并且推出了開(kāi)源社區(qū)OperaMasks.org。

OperaMasks是一個(gè)基于JSF的Web應(yīng)用框架。
選用JSF作為基礎(chǔ)引擎,個(gè)人認(rèn)為有三大優(yōu)勢(shì):
一是,SUN的官方標(biāo)準(zhǔn);二是,JSF得到了包括IBM在內(nèi)的眾多大廠商的支持,這點(diǎn)對(duì)于可持續(xù)發(fā)展來(lái)說(shuō)很重要;
第三點(diǎn),也是Kingdee宣稱(chēng)的“與表現(xiàn)層無(wú)關(guān)的表現(xiàn)層技術(shù)”,這點(diǎn)有助于適應(yīng)不斷發(fā)展的RIA技術(shù)。在這方面,OperaMasks提供了“Render Kit”,也就是說(shuō),當(dāng)有一個(gè)新的RIA技術(shù)出現(xiàn),僅僅需要針對(duì)這種RIA技術(shù)編寫(xiě)一個(gè)“Render Kit”,而不需要對(duì)以前的應(yīng)用做修改。

OperaMasks有幾個(gè)地方比較吸引我:
一、J2EE without AJAX
在這個(gè)AJAX滿(mǎn)天飛的時(shí)代,各式各樣的AJAX框架也層出不窮,單在Java方面就有DWR、DOJO、GWT、jMaki、Ajax4jsf等等。
一方面,這樣的框架提高了開(kāi)發(fā)效率,但是同時(shí)也意味著更高的學(xué)習(xí)成本;另外一方面,這些框架與既有Web技術(shù)的綁定問(wèn)題,以jMaki為例,如果你想為你的JSF應(yīng)用增加AJAX功能,你需要將一些JSF標(biāo)簽換成jMaki標(biāo)簽,這無(wú)疑增大了開(kāi)發(fā)者的工作量,并且增加了出錯(cuò)的機(jī)會(huì)。
而OperaMasks則從根本上解決了這些問(wèn)題,它提供了“原生”的AJAX支持。
這就是說(shuō),利用OperaMasks開(kāi)發(fā)具有AJAX功能的Web應(yīng)用,你不需要掌握額外的AJAX框架技術(shù)。通過(guò)OperaMasks,你只需要采用標(biāo)準(zhǔn)的JSF組件的寫(xiě)法,你唯一需要做的就是指定該組件的Render Kit是Ajax,或者在配置文件faces-config.xml中將全局Render Kit設(shè)置為Ajax。
只要掌握基礎(chǔ)的J2EE知識(shí),就可以進(jìn)行AJAX開(kāi)發(fā),這無(wú)疑是意義重大的。
OperaMasks提供了豐富的組件庫(kù),用于組織、顯示和編輯數(shù)據(jù),并且集成了強(qiáng)大的YUI-EXT組件庫(kù)功能。
這是OperaMasks的一些應(yīng)用截圖:









































二、Apusic Studio
與別的一些開(kāi)源框架相比,這是OperaMasks的巨大優(yōu)勢(shì)。
Kingdee為OperaMasks提供了一體化的開(kāi)發(fā)、配置、調(diào)試、監(jiān)控的集成開(kāi)發(fā)環(huán)境——Apusic Studio,它是一個(gè)基于Eclipse的IDE工具。通過(guò)Apusic Studio,你可以進(jìn)行“所見(jiàn)即所得”的可視化設(shè)計(jì)。Apusic Studio提供了Apusic Ajax、Apusic Graph、Apusic Layout和Apusic Widget等控件集。通過(guò)簡(jiǎn)單的拖放,就可以實(shí)現(xiàn)很好的AJAX效果。
這是Apusic Studio的一些截屏:



















































三、開(kāi)源社區(qū)
OperaMasks.org,是OperaMasks的開(kāi)源社區(qū)。
透過(guò)它,你可以看到有關(guān)OperaMasks的新聞、項(xiàng)目進(jìn)展情況、技術(shù)文章、在線(xiàn)示例、下載信息等等,你還可以通過(guò)論壇,來(lái)反饋信息。通過(guò)近日的觀察,發(fā)現(xiàn)社區(qū)還是比較活躍的。

當(dāng)然,從開(kāi)源角度,OperaMasks還有做得不夠理想的地方,例如采用的GPL開(kāi)源協(xié)議,對(duì)商業(yè)應(yīng)用是否友好?maillist、bugtrack何時(shí)完善?等等。
從一個(gè)JSF使用者的角度來(lái)看,OperaMasks帶來(lái)的方便,確實(shí)是巨大的。作為國(guó)產(chǎn)開(kāi)源軟件,希望OperaMasks可以走得更遠(yuǎn)!


歡迎大家訪(fǎng)問(wèn)我的個(gè)人網(wǎng)站 萌萌的IT人