Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSF的最佳实践是什么?_Java_Jsf - Fatal编程技术网

Java JSF的最佳实践是什么?

Java JSF的最佳实践是什么?,java,jsf,Java,Jsf,我过去曾做过Java和JSP编程,但我对Java Server Faces还不熟悉,我想知道是否有一套JSF开发的最佳实践 一些提示: 了解JSF请求,以及各种代码在其中的位置。特别要了解,如果存在验证错误,为什么模型值不会更新 选择一个标记库,然后继续使用它。花点时间确定您的需求,并创建不同库的原型。混合使用不同的taglib可能会对您的心理健康造成严重伤害。考虑使用-它大大简化了JSF开发中最糟糕的部分。我现在正在做一个基于CMS的JSF项目,没有facelets(在用它做了一个项目之后),

我过去曾做过Java和JSP编程,但我对Java Server Faces还不熟悉,我想知道是否有一套JSF开发的最佳实践

一些提示: 了解JSF请求,以及各种代码在其中的位置。特别要了解,如果存在验证错误,为什么模型值不会更新


选择一个标记库,然后继续使用它。花点时间确定您的需求,并创建不同库的原型。混合使用不同的taglib可能会对您的心理健康造成严重伤害。

考虑使用-它大大简化了JSF开发中最糟糕的部分。我现在正在做一个基于CMS的JSF项目,没有facelets(在用它做了一个项目之后),感觉好像我的左臂不见了……

我强烈建议找一个有JSF经验的人来领导你的第一个JSF项目,即使这意味着支付承包商3个月的费用。 JSF方法与JSP非常不同。你处理和解决问题的方式非常不同

图书馆 考虑以下库:

建筑学 拥抱你不仅需要知道这意味着什么,还需要广泛地使用它

将控制器与视图关联有两种主要模式

点网样式,每个视图一个请求控制器 每个顶级页面都有一个请求作用域控制器(bean),页面的所有验证和操作都使用这个类。还用于过滤和排序模型。 该模型将存储在几个会话级控制器上,这些控制器将处理与后端(EJB或持久层)的对话。这些会话控制器应该实现业务逻辑,并且不了解JSF、HTML或任何表示技术

控制器是会话级别的 根据您的数据模型设计控制器,并将它们相互嵌套。(这篇文章太长了,所以我不会深入讨论这些文章的细节)

所需知识 各位:

  • MDC
  • 基于组件的开发
  • 标签
至少一人:

  • JSF的限制(后退按钮, 随机导航等)
  • 第三次调试 政党图书馆(至少一人) 必须很舒服地出去 调试器并进入 JSF的实现(最容易使用 开源实现,比如 我的脸)

我一直在使用JSf的IBM实现,并发表了一些评论。这不是一个坏方法,但你必须坚持IBM的“生活方式”。他们编写了自己的标记库,扩展了JSF标准。如果您能够设法留在rationalapplicationdeveloper(RAD)内部(RAD不经常更新),那么集成有时会有问题,但总体上还是不错的。与WebSphere的集成也非常好。除非你的雇主在IBM打高尔夫,否则我认为最好尽量保持普通。

我还不知道跨领域/表单级验证的“最佳实践”

也就是说,JSF验证目前面向单字段验证。在我看来,当您看到复杂的跨字段/表单级验证时,情况会变得很糟糕

老了,但在我看来仍然很敏锐

  • 添加我对facelets的投票。我最近升级了一个使用facelets的项目,它解决了jsf的一些大问题,特别是为您提供了一个现成的模板系统,并允许您在适当的时候使用标准html,而无需使用“逐字”标记
  • RestFaces是许多人抱怨的get/post问题的解决方案。它也有很好的文档记录和易于使用
  • 不要使用太多的标记库。升级时,这会使工作更加困难
  • SEAM收集了许多JSF最佳实践,但我还没有使用它,所以我不能真正推荐它,只是建议您看看它
选择一个好的组件库。不要使用richfaces,我建议不要使用jsf,在rest架构中使用spring mvc、jquery fro view和json。但如果必须,请使用primefaces,因为它易于使用且具有足够的组件。

您可以在下面的链接中查看它,您可以在其中找到有趣的文章


+1关于这一点。没有Facelets的JSF只会让人感觉崩溃。