带有 JSF 项目的组件库
Posted
技术标签:
【中文标题】带有 JSF 项目的组件库【英文标题】:Component library with JSF project 【发布时间】:2011-09-03 06:10:34 【问题描述】:我期待使用带有 JSF 的组件库(可能是richfaces 或 primefaces)来开发社交应用程序的前端。
我需要知道:
1.) 除了为所有组件选择一个主题之外,独立自定义每个组件的外观的可能性有多大。是否可以将 CSS 与这些组件一起使用。
2.) 我可以在单个项目中使用多个组件库(取决于我需要哪些组件)吗?
3.) 也欢迎任何有关选择组件库的建议!
编辑
4.) 是否有用于使用这些库开发 UI 的可视化编辑器?我目前使用 netbeans 6.9 IDE。
【问题讨论】:
【参考方案1】:-
我知道 RichFaces 可以做到这一点
是的,这是可能的。很可能您必须至少自定义其中一个以获得一致的布局。对于某些图书馆,已经存在这样的主题,例如您会发现一些具有 Richfaces 外观和感觉的 Primefaces 主题。
我们决定使用 RichFaces,它提供了各种有据可查的
成分。看例子
您的图书馆候选人并决定
如果它们可能满足您的需求。
富脸: http://livedemo.exadel.com/richfaces-demo/richfaces/modalPanel.js 素面: http://www.primefaces.org/showcase/ui/home.jsf Apache MyFaces 特立尼达: http://myfaces.apache.org/trinidad/index.html
【讨论】:
注意:liveemo.exadel.com 是 RichFaces 3.3.x 演示。对于 4.x,请看这里richfaces-showcase.appspot.com【参考方案2】:我使用 primefaces,自定义每个组件非常简单有趣。他们的用户指南中有关于如何自定义每个组件(css)的示例。 Primefaces 严重依赖 jQuery(我通过查看生成的源代码注意到),但也使用其他 javascript 库,如 YUI。有时它可能会在客户端上非常密集地使用 Javascript,但到目前为止,它做得很好。
我不确定多个组件,从未尝试过,根据我自己的建议,我认为 primefaces 很不错。
从 netbeans 7.0 开始,primefaces 包含在 Netbeans 中,因此您不必再担心配置问题。
【讨论】:
【参考方案3】:我喜欢 Primefaces,因为它们可能拥有最大且功能最丰富的组件。它需要一点点调整,但您也可以将其他组件库与 Primefaces 一起使用。
为很多问题做好准备。有很多错误,但是如果您对 javascript 和 CSS 相当熟悉,并且对 JSF 有超过初学者水平的理解,那么您应该没有问题解决它们。只需准备好实施几个臭名昭著的 hack 来满足一些要求。
尽管存在这些问题,但我注意到它在每个版本中都变得越来越稳定,所以它只会从这里变得更好。
【讨论】:
【参考方案4】:看到你已经得到了一些答案。我和你有或多或少相同的问题。最后我选择了 Richfaces,因为以下几点
与核心 JSF 2.0 库更好地集成,并且具有或多或少相同的单一文化。 带宽上没有负载,当不使用任何 Richfaces 组件时,如果您使用 Primefaces,就会发生这种情况。因为无论您是否使用组件,jquery 和 CSS 都会始终加载。 文档更全面一些。但 Primefaces 论坛更加活跃,您会得到更好的反馈带宽是我的重点,所以我选择了 Richfaces。但我也喜欢 Primefaces 库,因为组件的真实性更高。
【讨论】:
@Marcos:RichFaces 在每个组件的基础上加载特定于组件的 CSS/JS,而 PrimeFaces 为库包含的每个组件加载它,即使您只使用<p:commandButton>
或其他东西。
@Marcos:它有它的优点/缺点。 HTTP 请求的数量与 HTTP 响应的大小。很难说哪个更好,因为一切都只是由浏览器缓存:)
@Marcos:试试你最喜欢的两个组件库,自己看看。它们都继承了 Core JSF 组件库的功能。所以它更多的是一个品味问题,你是否可以找到好的代码示例。以上是关于带有 JSF 项目的组件库的主要内容,如果未能解决你的问题,请参考以下文章
JBoss RichFaces vs IceFaces vs Apache Trinidad - JSF 组件库比较