比较JSF实现

时间:2009-03-19 11:20:59

标签: java jsf

我很高兴能够参考资源和人们对已知JSF实现的比较经验:MyFaces和IceFaces在组件的丰富性,易于开发,流行度,稳定性,社区支持等方面。

更新:正如有人指出的那样,最初的问题不够准确。很少有JSF实现(Apache MyFaces,Sun参考实现)和一些JSF组件库(IceFaces,RichFaces,Woodstock等)。但无论如何我的问题是核心JSF和JSF组件库实现。

5 个答案:

答案 0 :(得分:11)

小心!

JSF是一个规范。因此,您必须使用实现,例如Sun提供的实现,或Apache(MyFaces)提供的实现。

IceFaces 不是一个实现,而是一个组件库。存在其他库,例如RichFaces,MyFaces Tomahawk等。

您可以查看组件库之间的差异{。{3}}。

答案 1 :(得分:9)

我意识到这是一篇很晚的帖子,但是因为我想扩展并且没有看到它:我真的建议你也看看Primefaces。我仍然相对较新的JSF(1年开发时间),但我一直在尝试在我们的研究阶段使用不同的套件来完成每个新的子集。

这是我的经历:   Icefaces处理AJAX而不需要太多工作。当您尝试做一些相对简单的事情时,Icefaces可以很好地完成小型DOM更新和响应式UI。我强烈建议有一个新人从这里开始,因为你将能够快速获得一些工作,并且可以毫不费力地学习JSF的所有细节。 (它也有不错的Eclipse工具)

Richfaces是一个很好的套件,它可以处理更精细的ajax(更接近JSF2.0的工作方式)我觉得这些组件有点缺乏,但是如果你自定义外观Richfaces是一个更好的起点因为它通常感觉更容易皮肤。 (然后,普通的JSF2.0适用于此)。

最近我尝试了Primefaces(http://www.primefaces.org)。这个套件涉及到更多的工作,因为它可以说它在组件的数量和外观和感觉方面具有显着的优势。在上面,我喜欢在Primefaces中处理复杂的事情,这些事情在Icefaces中完全令人沮丧。

我希望这有助于其他读者,我认为所有这些套件都很棒。如果你正在做一些疯狂的Javascript,你需要使用Primefaces进行细粒度控制。

另一个小注意事项:如果它是一个新的应用程序,使用JSF2.0 - 它具有显着的优势,我还没有发现任何令人沮丧的事情。

答案 2 :(得分:4)

RichFaces由Jboss在Redhat下开发。

组件丰富性:很多很棒的ajax功能和UI组件。

易于开发:主观,但我说是。

受欢迎程度: v3.3.0有大约13,000次下载

稳定性:仍在积极开发中添加新功能。适用于Bug Tracking的系统。

社区支持:有一个很好的在线demo代码示例(Jboss网站上你必须登录才能访问)。 Jboss网站上有forumwiki

答案 3 :(得分:4)

如果您使用Sun RI或MyFaces没有真正的区别。两者都实现了JSF标准定义的内容。

对于组件库,您必须查看:

  • ICEfaces(我们更喜欢这个)
  • RichFaces(你要检查它与JBoss世界的紧密程度)
  • 战斧(经典;有传言称发展有点停滞)
  • Trinidad(Oracle ADF面向开源内核)

这些很重要。伍德斯托克已经死了,ICEfaces的人们正在提供迁移路径。如果您已经使用Oracle工具(例如JDeveloper),Trinidad是一个很好的选择。如果您使用JBoss工具,RichFaces就是一个很好的选择。

如需更独立的使用,请查看Tomahawk和ICEfaces。 ICEfaces允许集成Tomahawk组件,尽管蒙皮不是真正兼容的。集成是ICEfaces的关键特性之一。 IDE,应用服务器和其他开源框架的支持非常出色。 Facelets集成是您可以获得的最佳选择。 AJAX推送技术是目前最好的Push实现。很多JSF 2.0的东西已经是ICEfaces 1.8的一部分。

以下是我们更喜欢ICEfaces的原因:

http://blog.rainer.eschen.name/2008/09/22/icy-faces-for-more-than-a-year/

有关JSF的介绍,请点击此处:

http://blog.rainer.eschen.name/2008/03/10/how-to-start-the-jsf-dance/

提示:Packt Publishing于2008年底要求我写一本关于ICEfaces的书。它将于2009年10月底上市。了解这一点,答案可能有点偏颇。但是,这是ICEfaces长期测试和超过1。5年经验的结果。这是您可以获得的最佳技术。在我们的项目最终选择ICEfaces之前,我测试了所有重要的Open Source JSF实现。

答案 4 :(得分:2)

我是第二个RichFaces。 exadel页面上有很多很好的文档(Mark也链接了),并且每个组件都有一个非常好的开发人员指南。赞成核心JSF + Richfaces(它也有很多很好的Ajax支持)。