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