【发布时间】:2010-09-07 02:40:20
【问题描述】:
我过去做过 Java 和 JSP 编程,但我是 Java Server Faces 的新手,想知道是否有一套 JSF 开发的最佳实践。
【问题讨论】:
我过去做过 Java 和 JSP 编程,但我是 Java Server Faces 的新手,想知道是否有一套 JSF 开发的最佳实践。
【问题讨论】:
考虑使用facelets- 它极大地简化了JSF 开发中最糟糕的部分。我现在正在做一个没有 facelets 的基于 CMS 的 JSF 项目(在用它做了一个项目之后),感觉就像我的左臂不见了....
【讨论】:
我强烈建议让有 JSF 经验的人来领导您在 JSF 中的第一个项目,即使这意味着要向承包商支付 3 个月的费用。 JSF 方法与 JSP 非常不同。您处理和解决问题的方式非常不同。
考虑以下库:
拥抱MVC,您不仅需要知道这意味着什么,还需要广泛使用它。
将控制器与视图关联的主要模式有两种
每个顶级页面都有一个请求范围控制器(bean),页面的所有验证和操作都使用这个类。也用于过滤和排序模型。 模型将存储在一些会话级控制器上,这些控制器将处理与后端(EJB 或持久层)的对话,这些会话控制器应该实现业务逻辑,并且不了解 JSF、HTML 或任何表示技术。
根据您的数据模型设计控制器,将它们相互嵌套。 (这篇文章太长了,我就不细说了)。
大家:
至少一个人:
【讨论】:
一些提示: 了解 JSF 请求 lifecycle 以及您的各种代码适合它的位置。尤其要找出如果出现验证错误,您的模型值不会更新的原因。
选择一个标签库,然后坚持下去。花点时间确定您的需求并制作不同库的原型。混合使用不同的标签库可能会对您的心理健康造成严重伤害。
【讨论】:
【讨论】:
我一直在使用 JSf 的 IBM 实现并且有一些 cmets。这不是一条坏路,但您必须致力于 IBM 的“生活方式”。他们编写了自己的标签库来扩展 JSF 标准。如果您能够设法留在 Rational Application Developer (RAD)(它不会经常更新),那么集成有时会出现错误,但总体上还不错。与 WebSphere 的集成也非常好。除非您的雇主与 IBM 一起打高尔夫球,否则我认为最好保持原样。
【讨论】:
我还不知道跨字段/表单级别验证的“最佳实践”。
也就是说,JSF 验证目前是面向单字段验证的。当您查看复杂的跨字段/表单级别验证时,IMO 会变得很难看。
老了,但在我看来仍然很敏锐 http://weblogs.java.net/blog/johnreynolds/archive/2004/07/improve_jsf_by_1.html
http://www.jroller.com/robwilliams/entry/jsf_multi_field_validation_not
【讨论】:
您可以通过以下链接查看感兴趣的文章
【讨论】:
选择一个好的组件库。不要使用richfaces,我建议你不要使用jsf,在rest架构中使用spring mvc,jquery fro view和json。但如果必须,请使用易于使用且组件充足的 primefaces。
【讨论】: