8

我们很快开始开发新的 Web 应用程序,目前正在评估/提出要使用的技术堆栈。

对于视图层,我们必须在 Primefaces、Icefaces 2(因为我们肯定想要 JSF2)和 Richfaces 之间进行选择。我们的基本要求是外观和感觉、开发的简单性和易用性、可扩展性和性能(最重要的)。

哪种视图技术/框架最适合利用。我们将不胜感激任何输入/专家意见。另外,如果有其他推荐的框架,请告诉我们。

谢谢并恭祝安康

4

3 回答 3

9

我使用过 ICEfaces 和 PrimeFaces,并且更喜欢 PrimeFaces 有两个主要原因:开发效率和 UI 性能/响应能力。

对话框组件说明了两者:

在 PrimeFaces 中进行比较:

<p:dialog widgetVar="dialog"> [content] </p:dialog>
...
<a href="#" onClick="dialog.show()">Open dialog</a>

在 ICEfaces 中对此:

<ice:panelPopup rendered="#{bean.dialogOpen}"> **dialog chrome** [content]
</ice:panelPopup>

<ice:commandLink action="#{bean.showDialog}">Open dialog</ice:commandLink>

在 ICEfaces 中,您需要一个服务器端往返一个托管 bean 属性 + 动作侦听器来打开一个对话框。在 PrimeFaces 中,借助“widgetVar”,您可以将组件绑定到可在 jQuery 和常规 DHTML 事件中访问的客户端变量。

此外,PrimeFaces 组件可以用更少的代码处理许多常见情况;例如,对话框组件包括标题栏和要关闭的“X”,而在 ICEfaces 中,您必须为此滚动(或购买带有复合组件的 EE)。

最后,如果您的页面变大,ICEfaces 中的“自动 AJAX”服务器端 DOM 差异会在服务器端产生性能问题——大多数时候您知道要刷新什么,并在组件上明确指定 update="id"更有效。

于 2011-07-14T20:16:54.340 回答
4

在一个小的 POC 中尝试它们,也许几页,然后自己决定。还要考虑成熟度、可用支持、可用资源、企业特性等。根据我的经验,A vs. B vs. C 很少产生好的论据,无论是使用一个组件库还是另一个。

于 2011-05-18T16:45:40.057 回答
3

我尝试过 IceFaces 和 PrimeFaces,最终选择了 PrimeFaces,因为它是零配置启动、使用组件的简单性以及与 JQuery 的良好集成。我只是错过了 PrimeFaces 中对服务器推送的良好支持,而 IceFaces 中很好地支持了这一点。

我也喜欢 PrimeFaces 中的 one-jar 依赖项,而 IceFaces 至少需要三个 jar 库才能工作。

问候和祝你好运。

于 2011-05-19T13:35:06.617 回答