到目前为止JSF已经走过了一个相当长而且非常有争议的路程. 可是一直火不起来,我对JSF也只是只知其一二,因为有很多更好的东西我可以选择. 最近TheServerSide的编辑写了一篇文章"Rethinking JSF - The Real Problem,"里面谈到了一些JSF为什么不火的原因,同时也提到一些将来需要做的措施来克服JSF的发展的障碍,好像是很多人都对JSF有自己的看法,因为留下评论特别多,下面是他的文章里提出的很多问题中的一个问题,我翻译出这一小段供大家欣赏,如果有兴趣可以去看看英文原文.
这篇文章里的一个例子(有很多例子):
真正的问题就是JSF,作为一个组件框架,却只有少的可怜的组件.
什么样的控件是有用的? 好,考虑一下你的标准web应用程序,一个用户是如何和它交互的:用户登录,查找一些东西,阅读它,也可能创建一些新东西,然后注销.
所以...登录组件在哪呢? 搜索框组件在哪呢? 数据输入组件在哪呢? 管理“pretty URLs”的功能在哪呢?(“pretty URLs?”也叫做可做书签的URL,或者搜索引擎友好的URL)数据流在哪呢? 会话状态在哪呢?
在JSF实现这些东西绝对没有什么障碍,而且有很多组织(公司, 开源组织)都已经实现了一些 - frameworks and implementations ,就像 Seam, IceFaces, RichFaces, Tomahawk, NetAdvantage, and others. 对于其他的,在一些书里像 "JSF: The Complete Reference" (Schalk, Burns), "JSF In Action" (Mann), and "Core JSF" (Geary)有现成的代码. 有些东西在web上甚至都存在了(例如,如果管理友好URLs). 这里很多网站上都有JSF信息: IBM developerWorks, http://java.sun.com, http://www.jsfcentral.com, http://www.jsftutorials.net, and http://www.theserverside.com itself.
大部分的这些网站和参考资料中在应该用的地方使用了JSF:它们没有使用servlet过滤器(well,除了少数案例,但也是为了做到更有意义). 它们没有servlets. 它们全部用的是JSF组件生命周期,它们全部是在兼容的JSF实现间可移植的.
但是大部分的书籍资料都集中在inputText组件以及相似的近亲上. 虽然导航和数据输入/输出也是极其重要的,但所有的研究过这些的JSF顾问专家所能做的只是告诉人们JSF和人们以前所遇到的是怎样的不同. 不能不感到同情;作者们倾向于使用更简单的机制来说明一些有价值的东西,而不是需要一些高级知识才能理解的表达方式. 如果他们选择使用需要有高级知识才能理解的表示方式,那么他们们会被没有这些知识的读着疏远.
尽管有些问题已经被提交到了JSF2,这仍然需要一年的时间,并且大部分的问题并不是和JSF规格细节相关的. 它们可能已经被解决掉了. 你怎么想? 你有没有发现JSF的其他问题? 如果有,你是怎么处理它们的?
分享到:
相关推荐
jsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSFjsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSF
7. **jsf实例**:在实际应用中,JSF实例通常指的是一个运行时的JSF应用程序,它包含了配置、组件、Managed Beans以及它们之间的交互。 在“Login”示例中,我们可能看到以下代码片段: ```xml <!-- login.xhtml --...
在JSF中,**组件** 是UI的基础元素,如按钮、文本输入框等。这些组件可以通过XML(Facelets)或JSP页面进行声明,并且可以组合成更复杂的视图结构。**Facelets** 是JSF推荐的视图定义语言,它比JSP更强大,更易于...
JSF(JavaServer Faces)是Java平台上用于构建用户界面的Web框架,尤其在处理表单和数据交互方面表现强大。本项目聚焦于JSF的文件上传功能,特别是针对大文件的上传,允许用户上传最大可达1.99GB的文件。在实际应用...
JSF是一种用于构建Java ... 包含JSP页面的JSF应用程序也使用由为了表现UI组件和在页面上的其他对象的JSF技术而定义的标准的tag库。 Java Server Faces技术的重要开发框架 sun-ri、myfaces、icefaces、richfaces、seam
在JSF中,事件处理通常通过监听器(Listeners)和处理器(Action Methods)完成,这些可以在管理Bean中定义。监听器用于响应特定类型的事件,而处理器方法则执行与事件相关的操作。 ### JSF配置与导航 为了配置JSF...
在JavaServer Faces (JSF)框架中,分页是一种常用的技术,用于处理大量数据时提供更好的用户体验。当数据集过大,一次性加载所有记录到页面上会导致性能下降且用户界面响应变慢。通过分页,我们可以将数据分成多个...
《JSF Web应用实战开发》则深入到实际开发中,提供了许多实战案例,让读者了解如何在实际项目中运用JSF。内容可能包括如何处理表单提交、验证用户输入、使用AJAX增强用户体验、以及与数据库交互等。这部分资料会帮助...
在JSF应用中,`.jar` 文件通常包含JSF实现库、组件库或自定义组件的实现。开发者可以将这些库导入到项目中,以便利用JSF的功能。 **使用JSF进行开发**: 1. **环境配置**:首先需要在项目中引入JSF的库,如Mojarra...
《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF...
这篇博文“JSF中文问题解决方法完整版”提供了关于如何处理JSF框架在处理中文字符时可能出现的问题的解决方案。JSF作为Java EE的一部分,常常用于企业级应用开发,但处理中文字符时可能会遇到编码不兼容、乱码等问题...
JSF 1.2是该框架的一个重要版本,它在JSF 1.1的基础上进行了一系列的改进和增强,提升了开发效率和应用性能。本文将深入探讨JSF 1.2的核心概念、特性以及如何在实际项目中应用这些知识。 ### 1. JSF框架概述 JSF...
这些文件您可以在 sample 目录下,解压缩当中的一个范例,在它的/WEB-INF/lib目录下找到 <br>并不能找到standard.jar文件。(难道是我下载的JSF reference implementation 版本的原因?) <br>无论...
标签“jsf”直接指向JSF技术,意味着文档内容可能涉及JSF的使用、教程、最佳实践或者是解决JSF开发中遇到的问题。由于提供的文件内容主要是邮件头信息和HTML格式的元数据,它们并不直接包含JSF的具体知识点。但是,...
在"JSF-1.2_09-b02-FCS"这个压缩包中,我们可以找到JSF 1.2的实现库。这些jar文件包含了JSF框架的实现,开发者可以将其导入项目中以使用JSF 1.2的功能。然而,描述中提到辅助包可以从Spring框架中获取,这意味着JSF ...
3. **JSF的LIB**:JSF的核心库包含了许多内置的组件和实用程序,这些库在JSF应用中是必不可少的。学习这部分,你需要了解如何导入和使用JSF的库,例如`javax.faces.*`和`org.primefaces.*`,以及它们提供的功能,如...
jsf 视频 java faces jsf 视频 java faces jsf 视频 java faces
**JSF(JavaServer Faces)框架在企业级应用中的详解** JSF,全称为JavaServer Faces,是Java EE平台上的一个MVC(Model-View-Controller)框架,用于构建用户界面,尤其适用于企业级Web应用程序的开发。它提供了一...
3. **EL表达式**:JSF的Expression Language(EL)用于在视图层和模型层之间传递数据,比如在JSF组件中绑定Managed Bean的属性,如`value="#{loginBean.username}"`。 4. **Hibernate配置**:集成Hibernate时,需要...