各種JSF框架比較
一、Myfaces tomahawk
這是apache組織力推的JSF框架,目前到了1.1.6版本,與Myfaces 1.1.5對(duì)應(yīng),不支持ajax,也不是rich component風(fēng)格,文檔比較欠缺,版本更新速度較慢,目前正在研發(fā)1.1.7版本,組件有不少,但仍不夠豐富,布局組件不行,問(wèn)題響應(yīng)不及時(shí),不支持換膚。
考慮到apache的背景,可以作為一個(gè)選擇,但不是最好選擇。
二、Myfaces trinidad
這是oracle公司捐獻(xiàn)給apache的JSF框架,目前到了1.2.4版本,與Myfaces 1.2.0對(duì)應(yīng),支持PPR(部分頁(yè)面更新,與ajax類似),不是rich component風(fēng)格,文檔比較全,版本更新速度較快,組件豐富,但布局組件不行,問(wèn)題響應(yīng)不及時(shí),支持換膚。
個(gè)人認(rèn)為這個(gè)組件受oracle公司捐贈(zèng)的影響,目前Oracle Jdevelop 11g的組件非常豐富,是rich component,計(jì)劃有進(jìn)一步捐贈(zèng)動(dòng)作,但時(shí)間不詳。
考慮到apache的背景,可以作為一個(gè)選擇,但不是最好選擇。
三、icefaces
這是一個(gè)比較美觀的JSF框架,部分組件支持ajax,目前支持JSF1.1,sun ri與Myfaces的實(shí)現(xiàn)都可以使用,組件數(shù)量夠用,但需要進(jìn)一步豐富,取法布局組件,對(duì)收費(fèi)用戶提供最新版本,社區(qū)用戶可以使用次新版本,但可以從 SVN上下載最新版本自己編譯(不知為何,我自己下載沒(méi)有成功),文檔豐富,例子也不錯(cuò),icesoft公司是一個(gè)商業(yè)公司,版本更新速度很快,也推出了 eclipse、workshop、netbean的插件,支持可視化設(shè)計(jì),但eclipse下的響應(yīng)速度很慢。
可以作為一個(gè)選擇,但最好能成為收費(fèi)用戶。
四、oracle jdevelop 11g
這是一個(gè)非常龐大的軟件,我們?cè)?jīng)在10g、11g下做過(guò)一些測(cè)試,10g可以集成spring+hibernate,也可以支持Myfaces trinidad,但需要做一個(gè)調(diào)整,網(wǎng)上有文章。至于11個(gè),目前為T(mén)P3,整體設(shè)計(jì)效果很不錯(cuò),但速度非常慢,使用Oracle公司自己的設(shè)計(jì)體系是非常好的選擇,但如果要使用spring+hibernate可能要費(fèi)一些事。不支持其他應(yīng)用服務(wù)器的開(kāi)發(fā),但可以發(fā)布。布局組件不如aom。
五、aom
我們已經(jīng)決定選擇aom進(jìn)行核心開(kāi)發(fā)。開(kāi)發(fā)速度快,有本地化支持,文檔齊全,組件美觀大方,源生性支持ajax,非其他能比,事例、文章非常好,這個(gè)開(kāi)發(fā)者非??粗氐?。經(jīng)過(guò)一系列的比較,認(rèn)為aom是首選。唯獨(dú)擔(dān)心的是金蝶公司的發(fā)展策略,一個(gè)開(kāi)源軟件需要良好的社區(qū)環(huán)境,包括捐助、收費(fèi)培訓(xùn)、社區(qū)成員的支持等,畢竟金蝶也是一個(gè)商業(yè)公司,爭(zhēng)取其他公司的贊助也非常重要。
六、myeclipse開(kāi)發(fā)工具
這不是一個(gè)框架,僅支持sun ri、Myfaces基本組件的開(kāi)發(fā),不是JSF開(kāi)發(fā)的選擇。
七、eclipse 3.3.1
其推出的wtp2.0(即將推出3.0)對(duì)JSF提供了進(jìn)一步的支持,任何組件庫(kù)和實(shí)現(xiàn)都可以通過(guò)配置與工程相連,可視化拖放、編輯屬性,但可視化效果不好,屬性設(shè)置不提供下拉等選擇,需要對(duì)組件本省較熟,導(dǎo)航規(guī)則的設(shè)計(jì)還需要優(yōu)化。明年的版本將推出對(duì)Myfaces的可視化支持。從開(kāi)發(fā)工具的角度講,提供了非常好的選擇。
八、sun公司netbean
最新的6.0版本,與oracle公司一樣,提供了整體性選擇,各方面都不錯(cuò),也有spring的插件,但支持hibernate本人沒(méi)有了解過(guò),也有頁(yè)面的布局插件,但類似導(dǎo)航欄的沒(méi)見(jiàn)過(guò),這是一個(gè)很好的選擇,尤其考慮 sun的地位,ri的更新速度大大快過(guò)mufaces,組件非常豐富。
不習(xí)慣的是一個(gè)頁(yè)面文件對(duì)應(yīng)一個(gè)java類文件,oracle也提供了這種選擇,感覺(jué)沒(méi)有spring靈活。
九、bean公司的workshop
收費(fèi)軟件,沒(méi)有試過(guò)。
【編輯推薦】